class SQLUTIL:
def __init__(self, server_name, user_name, password, database_name):
self.server = server_name
self.user = user_name
self.password = password
self.database = database_name
def pyodbcSearch(self, procedure):
cursor = self.conn.cursor()
cursor.execute(procedure)
return cursor
def pyodbcExecute(self, procedure):
cursor = self.conn.cursor()
cursor.execute(procedure)
self.conn.commit()
def conn_close(self):
self.conn.close()
一般查询用的是:pyodbcSearch(self, procedure)
get_c_date = "select distinct top 1 C_date from table order by C_date desc" cursor_1 = sql.pyodbcSearch(get_c_date)
如果要执行临时表和sp用的是: pyodbcExecute(self, procedure)
但是有个坑, 我在本地执行用sql.pyodbcSearch(get_c_date), 没有报错数据也同步过去了,后来发现 其实sp 里面有些操作失败了, 然后部署到airflow上去其实是报错的。所以只能用pyodbcExecute(self, procedure)