gpt4 book ai didi

python - 'HY00 0', ' SQL 包含 31 个参数标记,但提供了 32 个参数' Access mdb 文件

转载 作者:搜寻专家 更新时间:2023-10-30 20:25:31 25 4
gpt4 key购买 nike

我正在从 MySQL 复制到 MDB,我遇到了一个奇怪的问题。我有一个问题

cur.execute("""UPDATE SIGN_INVENTORY SET DISTRICT=?, COUNTY=?, CITY=?, ROUTE_ID=?, NEXT_INSPECTION_DATE=?, INSP_FREQ=?, GPS_LATITUDE=?, GPS_LONGITUDE=?,
FABRICATOR=?, CONTRACTOR=?, DATE_ERECTED=?, DATE_LAST_MODIFIED=?, BRIDGE_ID=?, STATE_PLANE=?, BEGIN_NODE=?, BEGIN_OFFSET=?,
SPAN_LENGTH=?, NUMBER_SIGNS=?, TOTAL_SIGN_AREA=?, WALKWAY_LENGTH=?, STRUCTURE_TYPE=?, MESSAGE_TYPE=?, VMS_TYPE=?, MATERIAL_TYPE=?,
CHORD_TYPE=?, POLE_TYPE=?, FOUNDATION_TYPE=?, LAST_INSPECTOR=?, LMOD_USERID=?, LMOD_DATE=?, LMOD_TIME=?
WHERE STRUCTURE_NUMBER=?""", (row[1], row[2], row[3], row[4], row[5], row[6], row[7], row[8], row[9], row[10],
row[11], row[12], row[13], row[14], row[15], row[16], row[17], row[18], row[19], row[20],
row[21], row[22], row[23], row[24], row[25], row[26], row[27], row[28], row[29], row[30],
row[31], row[0]))

我遇到了错误

'HY000', 'The SQL contains 31 parameter markers, but 32 parameters were supplied'

现在,如果我删除最后一行[0],我会得到

'HY000', 'The SQL contains 32 parameter markers, but 31 parameters were supplied'

两个数据库中的列完全相同。我在其他多个地方进行了非常相似的查询,它们运行良好。

最佳答案

我想通了。在 MySQL 中,日期字段存储为

datetime.datetime(2002, 7, 22, 0, 0)

这导致参数计数中断。我需要像这样将值转换为 char

cast(NEXT_INSPECTION_DATE as char)

关于python - 'HY00 0', ' SQL 包含 31 个参数标记,但提供了 32 个参数' Access mdb 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36585454/

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