我试图将数据框中的记录插入到存储在配置单元集群上的现有表中。我不能使用sqlalchemy引擎,因为我使用的是JDBC连接
我的代码是:
cursor = conn.cursor()
engine = sqlalchemy.create_engine('driver://', creator=conn)
dff = pd.DataFrame([[1, 2], ['process 1', 'process 2']], columns=['id', 'description'])
sql_query = "INSERT INTO default.my_table SELECT * FROM {0}".format(dff)
#dff.to_sql(name='my_table', schema='default', con=engine.connect(), if_exists='append')#I also tried this but it gives me error: 'Connection' object is not callable
cursor.execute(sql_query)
我更喜欢用户INSERT INTO SELECT,因为INSERT INTO VALUES可以在将来更改数据中的模式,并且使用此依赖关系,我只需要更改数据库表
根据我目前的代码,我得到了:
CAUSED BY: Exception: Syntax error
我怎样才能解决我的问题
dff
是一个对象,而不是字符串。你必须这样做cursor.executemany(your_sql_statement, column_1, column_2, column_n)
相关问题 更多 >
编程相关推荐