gpt4 book ai didi

csv - 07002 [Microsoft][ODBC SQL Server 驱动程序]COUNT 字段不正确或语法错误

转载 作者:行者123 更新时间:2023-12-02 07:04:22 28 4
gpt4 key购买 nike

我正在编写一些简单的 Python 代码来从 CSV 文件中提取数据并将其发送到 SQL Server 数据库。但我收到此 07002 COUNT 字段不正确或语法错误。 CSV 文件有多个值,如果我只发送一行数据,它会很好地插入。问题在于 CSV 文件中的多个值。如有任何帮助,我们将不胜感激!

这是我的代码:

import_data = []
for csvFile in glob.glob("*.csv"):
with open(csvFile, 'r') as f:
reader = csv.reader(f)<br>
next(reader, None)#This skips the headers.
import_data = [tuple(line) for line in csv.reader(f)]

将 CSV 文件中的数据插入 SQL Server

cur.executemany("""INSERT INTO dbo.currentobservations(STID,NAME,ST,LAT,LON,YR,MO,DA,HR,MI,TAIR,TDEW,RELH,CHIL,HEAT,WDIR,WSPD,WMAX,PRES,TMAX,TMIN,RAIN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)""", import_data)

#Here is the error message I am getting:
Traceback (most recent call last):
File "E:\Python3\Programs\sqlservermesonetcsv.py", line 40, in <module>
cur.executemany("""INSERT INTO dbo.currentobservations(STID,NAME,ST,LAT,LON,YR,MO,DA,HR,MI,TAIR,TDEW,RELH,CHIL,HEAT,WDIR,WSPD,WMAX,PRES,TMAX,TMIN,RAIN) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)""", import_data)
File "E:\Python3\lib\site-packages\pypyodbc.py", line 1671, in executemany
self.execute(query_string, params, many_mode = True)
File "E:\Python3\lib\site-packages\pypyodbc.py", line 1605, in execute
self.execdirect(query_string)
File "E:\Python3\lib\site-packages\pypyodbc.py", line 1631, in execdirect
check_success(self, ret)
File "E:\Python3\lib\site-packages\pypyodbc.py", line 986, in check_success
ctrl_err(SQL_HANDLE_STMT, ODBC_obj.stmt_h, ret, ODBC_obj.ansi)
File "E:\Python3\lib\site-packages\pypyodbc.py", line 966, in ctrl_err
raise DatabaseError(state,err_text)
pypyodbc.DatabaseError: ('07002', '[07002] [Microsoft][ODBC SQL Server Driver]COUNT field incorrect or syntax error')

最佳答案

您的表有 22 列。有必要为您的 ODBC sql 服务器驱动程序行提供恰好 22 个元素。

.csv 中的某些行可能有 23 个或更多条目。然后您可以尝试传递 line[:22] 来截断尾随元素。

如果 .csv 中的某些行的条目少于 22 个,您需要将合适的默认值添加到它们的末尾。

关于csv - 07002 [Microsoft][ODBC SQL Server 驱动程序]COUNT 字段不正确或语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36155218/

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