我正在尝试创建一个函数,该函数将接受一个数据帧,并将该数据帧解析为sql server表
在插入查询下面的select语句中,我一直不知道需要做什么。
df-dataframe
desttable-需要解析的目标表
tablecols-表的表列数组
#将数据帧插入表def InsertintoDb(self、df、desttable、tablecols(:tablecolnames=','.join(tablecols(qmark=[表列中s的'?']allqmarks=','.join(qmark(#rowappendcolname=','.join(['row.'+s表示表列中的s](对于索引,df.iterrows((中的行:cursor.execute(''插入[Py_Test]。[dbo].''+desttable+"("+tablecolnames+"(VALUES("+allqmarks+",)self.conn.commit((
非常感谢您的帮助。
正如这位先生在评论中所建议的那样,我可以使用df.to_sql来完成这项工作
类DbOps:def __init__(self(:self.username=''self.password=''self.ipaddress='localhost'#self.port=5439self.dbname=''#包含必要的Postgres登录信息的长字符串self.engine=sqlalchemy.create_engine(f"mssql+pydbc://{self.username}:%s@{sell.ipaddress}/{selr.dbname}?driver=SQL+Server+Native+Client+11.0"%urlrquote(f'{self.password}'((def InsertintoDb(self、df、desttable、tablecols(:df.to_sql(desttable,self.engine,index=False,if_exists='append'(