python连接Oracle传参
class Run:
def __init__(self):
username = "username"
password = "password"
host = "10.10.10.10"
port = "1523"
sid = "sid"
self.dsn = cx_Oracle.makedsn(host, port, sid)
self.con = cx_Oracle.connect(username, password, self.dsn)
self.cursor = self.con.cursor()
print('数据库连接成功!')
self.get_sql = SqlScript()
def get_count_exec_sql(self, sql):
self.cursor.execute(sql)
return self.cursor.fetchall()
def run(self):
val1 = [start_time, end_time]
result1 = self.get_count_exec_sql(self.get_sql.get_count_sql().format(val1[0], val1[1]))
result = pd.DataFrame(result1)
print(result)
class SqlScript:
@staticmethod
def get_count_sql():
sql = """select * from table_name where start_time >= to_date('{}', 'yyyy-mm-dd hh24:mi:ss') and end_time <= to_date('{}', 'yyyy-mm-dd hh24:mi:ss')"""
return sql
if __name__ == '__main__':
start_time = '2023-01-01 00:00:00'
end_time = '2023-01-10 23:59:59'
print('process starting...')
run = Run()
run.run()
print('process success')