gpt4 book ai didi

python - pymssql执行许多插入值错误

转载 作者:太空宇宙 更新时间:2023-11-03 18:16:00 24 4
gpt4 key购买 nike

我收到错误:

File "pymssql.pyx", line 443, in pymssql.Cursor.executemany (pymssql.c:6616) File "pymssql.pyx", line 417, in pymssql.Cursor.execute (pymssql.c:6057) File "_mssql.pyx", line 943, in _mssql.MSSQLConnection.execute_query (_mssql.c:9858) File "_mssql.pyx", line 974, in _mssql.MSSQLConnection.execute_query (_mssql.c:9734) File "_mssql.pyx", line 1091, in _mssql.MSSQLConnection.format_and_run_query (_mssql.c:10814) File "_mssql.pyx", line 1113, in _mssql.MSSQLConnection.format_sql_command (_mssql.c:11042) File "_mssql.pyx", line 1797, in _mssql._substitute_params (_mssql.c:18646) ValueError: more placeholders in sql than params available

在执行批量插入到 mssql 表中时 (executemany)。在一个执行语句中以及在 mssql management studio 中插入相同的数据效果很好。

我尝试使用字典和元组执行executemany(数据) - 相同的结果。

代码:

cursor.executemany("insert table Values (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)", (data))

有什么想法吗?

最佳答案

data 中的所有子列表/子元组的长度应为 21(SQL 查询中 %s 的数量)。

但是。您的数据还具有长度为11、12、13、15、16、17、18、19和20的项目。并且您会收到错误sql 中的占位符(含义:%s)比可用的参数(含义:数据中的子列表)

解决方法:检查您如何生成数据,并且每个数据项无情地生成二十一个。

关于python - pymssql执行许多插入值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24997548/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com