Python 函数将数据帧写入SQL
我有一个函数,它接收数据帧并将其作为表写入SQLPython 函数将数据帧写入SQL,python,sql,pandas,Python,Sql,Pandas,我有一个函数,它接收数据帧并将其作为表写入SQL def insert(df): with connection.cursor as cur: cur.execute('''create tablaexyz.xyz (ID integer, first_name varchar(100), last_name varc
def insert(df):
with connection.cursor as cur:
cur.execute('''create tablaexyz.xyz
(ID integer,
first_name varchar(100),
last_name varchar(100))''')
df.values.to_list()
cur.execute('''insert into xyz.xyz(?,?,?)''', df)
我想让这个函数动态到我在dataframe中传递的位置,它会根据dataframe中的列数自动创建表。对于数据类型,最好有基于pandas列类型创建等效SQL列类型的东西
任何帮助都将不胜感激。另外,我知道pandas.to_sql。这对我来说是行不通的。我想从我已有的代码中有机地创建一些有用的东西。为什么不使用
pandas.DataFrame.to_sql()
根据文档,它甚至应该能够创建表。如果不参考特定的RDBMS,可能很难“猜测”所有角落案例的正确数据类型。另一方面,例如,DuckDB提供了将数据帧集成为可查询视图的功能(参见第节)。不使用sql alchemy,因此没有引擎。寻找一种有机的方式来编码我已经有的东西。