Python 从存储过程pymssql获取返回值

Python 从存储过程pymssql获取返回值,python,sql,pymssql,Python,Sql,Pymssql,我正在使用python中的pymssql框架设置连接并从sql server返回错误值 这是我使用pymssql框架编写的Python代码 with pymssql.connect(self.server,self.userID,self.password,self.database) as conn: with conn.cursor() as cursor: msg = curosr.callproc("TESTVALUE") print (msg["

我正在使用python中的pymssql框架设置连接并从sql server返回错误值

这是我使用pymssql框架编写的Python代码

with pymssql.connect(self.server,self.userID,self.password,self.database) as conn:
    with conn.cursor() as cursor:
        msg = curosr.callproc("TESTVALUE")
        print (msg["return"])
我从msg得到错误,没有返回变量

如果我使用C语言来获取返回值,我可以这样做:

errCode = (int)Cmd.Parameters["return"].Value;
这是我的商店程序

ALTER PROCEDURE dbo.TESTVALUE
AS
BEGIN
    #Some query
    IF 1 == 1 #Some Logic
       Return -631 #The Return Value that i need to get
END
我需要用pymssql框架的python代码获取Return-631值

with pymssql.connect(self.server,self.userID,self.password,self.database) as conn:
    with conn.cursor() as cursor:
        msg = curosr.callproc("TESTVALUE")
        print (msg["return"])
如何在python中获得该返回值?请提供帮助。

您可以使用匿名代码块执行存储过程并检索返回值:

sql=”“”\
不计数;
声明@rvint;
EXEC@rv=dbo.TESTVALUE;
选择@rv;
"""
crsr.execute(sql)
return_value=crsr.fetchone()[0]
打印(返回值)#-631

Whoaa,谢谢!!