在Python3.7中获取此信息,尝试向SQL Server插入字典 出于构想,这件事实际上是否可以与SQL Server一起使用?是否还有另一种使用python插入多行的方法? 要执行的第二个参数必须是序列,迭代器或生成器。
尝试将excecutemany的第二个参数更改为迭代器,没有运气
cursor = connStr.cursor()
for key, value in r3.items():
for idx, x in enumerate(value):
x["remotecontrol_id"], idx
x["device_id"],idx
x["alias"], idx
x["groupid"], idx
x["online_state"], idx
sql = ("""INSERT INTO dbo.Tablename[remotecontrol_id], [device_id], [alias],[groupid],
[online_state]))
values(%s, %s, %s, %s, %s, %s, %s)""")
numRows = cursor.executemany(sq;, x) #pyodbc.ProgrammingError: The second parameter to executemany must be a sequence, iterator, or generator.
答案 0 :(得分:0)
您可以尝试这样做:
sql = ("INSERT INTO dbo.Tablename[remotecontrol_id], [device_id], [alias],[groupid], [online_state]))
VALUES(%('remotecontrol_id')s, %('device_id')s, %('alias')s, %('groupid')s, %('online_state')s")