sql - pyodbc.ProgrammingError: ('42000'
问题描述
我正在编写一个 python 代码,它将一些非零值从 excel 表传输到 SQL 数据库表。我附上代码
data = pd.read_excel('D:\\Python code\\srch_mtx.xlsx', index_col=0)
print(data)
for m in range(len(data)+1):
df_col = list(data.iloc[m][data.iloc[m] > 0].index)
print(df_col)
df_val = list(data.iloc[m][data.iloc[m] > 0])
print(df_val)
# read database
conn = pyodbc.connect('driver={SQL Server}; server=NISHANTDHANORE\\SQLEXPRESS; database=search_matrix;'
'Trusted_Connection=yes;')
cursor = conn.cursor()
cursor.execute('SELECT*FROM search_matrix.dbo.blank')
for x, y in enumerate(df_col):
print(y)
print(df_val[x])
query = """UPDATE search_matrix.dbo.blank SET {} = {} WHERE F1='page348'""".format(y, df_val[x])
cursor.execute(query)
conn.commit()
虽然 'y' 的大多数值是字母字符串,但当 'y' 的值达到数值 40 时,程序会抛出编程错误,如下所示
Traceback (most recent call last):
File "D:/SQL db connection/table_fill_v3.py", line 25, in <module>
cursor.execute(query)
pyodbc.ProgrammingError: ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near '40'. (102) (SQLExecDirectW)")
谁能帮我解决这个问题?提前致谢
解决方案
推荐阅读
- javascript - 我可以在 AWS Amplify 注册表单上添加选择输入类型吗?
- ios - React Native 后台地理位置更新IOS
- jquery-ui - Jquery datepicker格式根本不起作用
- git - 无法将代码推送到远程仓库
- pexpect - pexpect 在脚本结束前超时
- django - django 中的 FileFields 是否有等效的“list_editable”?
- javascript - 当我将它悬停在他的父 div 上时,为什么我的 div 会消失?
- php - 如何使用计划挂钩运行 wordpress cron 作业?
- flutter - 我需要一个用于 Flutter 的 Android 模拟器吗
- r - 有没有办法在变量被更改之前存储它?