【发布时间】:2020-02-11 02:45:15
【问题描述】:
我在 SQL Server 上保存了一个存储过程,并使用 pymssql 连接到该数据库。
我可以通过成功调用cursor.query('EXEC FindPerson') 来调用这个过程。
但是我不能使用方法cursor.callproc('FindPerson', (name,)),我得到了这个错误
'NoneType' 和 'int' 的实例之间不支持'
我想知道为什么我不能调用callproc 方法。我想使用callproc 的原因是能够从过程中循环不同的结果集。
我也试过在这个方法上放不同的存储过程,不管我放什么参数,我总是得到同样的错误。所以似乎callproc 方法在执行程序之前就失败了。问题是调用存储过程的正确方法是什么?
下面是一个存储过程的例子。
CREATE PROCEDURE FindPerson
@name VARCHAR(100)
AS
BEGIN
SELECT *
FROM persons
WHERE name = @name
END
【问题讨论】:
标签: python sql-server stored-procedures pymssql