Как объявить и получить выходной параметр в процедуре store в Django?

Я пытаюсь работать с хранимыми процедурами. До сих пор я умел работать с входными параметрами и успешно мог извлекать записи или вставлять и т.д. Теперь у меня есть хранимая процедура, которая требует выходной параметр @Id. Цель состоит в том, чтобы вставить запись в базу данных, используя хранимую процедуру, что мне и удается сделать

Проблема, с которой я столкнулся, заключается в том, что я не могу получить @Id. Я использую базу данных MsSQL. Я пробовал различные способы получения вывода @Id, но это приводит к ошибке.

Вот код:

cursor.execute("DECLARE @Id int; exec proc_jobcardInsert @Id = @Id OUTPUT, @Stocknumber='"+Stocknumber+"', @Modalnumber='"+Modalnumber+"'")
cursor.fetchone()

Я также пробовал так:

cursor.execute("exec proc_jobcardInsert @Stocknumber='"+Stocknumber+"', @Modalnumber='"+Modalnumber+"'")
cursor.fetchone()

Я также пробовал cursor.fetchone()[0]

Все они не работают. Я также сделал еще одну или две вещи, но все они выдают ошибку, гласящую:

django.db.utils.ProgrammingError: No results. Previous SQL was not a query

Данные вставляются в базу данных, но я хочу получить @Id в конце. Пожалуйста, подскажите, как этого добиться и что я делаю неправильно.

Вернуться на верх