错误:无法将数据类型 nvarchar 转换为 int。

0 投票
1 回答
17828 浏览
提问于 2025-04-17 20:58

我正在尝试使用 pyodbc 来执行一个存储过程。

但是我遇到了一个错误:('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]错误:将数据类型 nvarchar 转换为 int 时出错。 (8114) (SQLExecDirectW)'),这个错误和 User_id 这个数字字段有关。

这是我的代码:

jsonData = json.loads(data)
user_id = jsonData['user']['id']
Sreenname = jsonData['user']['screen_name']
name = jsonData['user']['name']


con.execute("exec sp_insertintoalltable user_id,Sreenname,name")

1 个回答

2

你的 con.execute() 语句并不会自动获取 Python 中的 user_idSreennamename 变量;你需要明确地把这些变量传进去,使用绑定参数:

con.execute("exec sp_insertintoalltable ?, ?, ?", (user_id, Sreenname, name))

撰写回答