(' 42000',' [42000] [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]将数据类型nvarchar转换为int时出错。(8114)(SQLExecDirectW)')

时间:2014-03-05 18:36:52

标签: python sql sql-server pyodbc

我正在尝试使用pyodbc执行存储过程

  

('42000','[42000] [Microsoft] [ODBC SQL Server驱动程序] [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 个答案:

答案 0 :(得分:1)

您的con.execute()语句未自动从Python中选择user_idSreennamename个变量;你需要使用绑定参数显式传递它们:

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