получить возвращаемое значение из хранимой процедуры pymssql - PullRequest
0 голосов
/ 06 февраля 2019

Я устанавливаю соединение и возвращаю значение ошибки с sql-сервера с каркасом pymssql в python

Это мой код Python с каркасом pymssql

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"])

и я получил ошибкуиз сообщения нет возвращаемой переменной

это то, что я могу сделать, если я на языке 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

Мне нужно получить значение Return -631 с кодом Python с каркасом pymssql

Как я могу получить это возвращаемое значение в Python?пожалуйста, помогите.

1 Ответ

0 голосов
/ 07 февраля 2019

Вы можете использовать блок анонимного кода для выполнения хранимой процедуры и получения возвращаемого значения:

sql = """\
SET NOCOUNT ON;
DECLARE @rv int;
EXEC @rv = dbo.TESTVALUE;
SELECT @rv;
"""
crsr.execute(sql)
return_value = crsr.fetchone()[0]
print(return_value)  # -631
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...