Могу ли я иметь дополнительный параметр OUTPUT в хранимой процедуре?

У меня есть хранимая процедура, которая имеет кучу входных и выходных параметров, потому что она вставляет значения в несколько таблиц. В некоторых случаях сохраненный процесс вставляется только в одну таблицу (в зависимости от входных параметров). Вот макет сценария для иллюстрации.

Таблицы / объекты данных:

Человек

Id
Name
Address

название

Id
FirstName
LastName

Адрес

Id
Country
City

Скажем, у меня есть хранимая процедура, которая вставляет человека. Если адрес не существует, я не буду добавлять его вAddress таблица в базе данных.

Таким образом, когда я генерирую код для вызова хранимой процедуры, я не хочу беспокоиться о добавленииAddress параметр. ЗаINPUT Параметры это нормально, потому что SQL Server позволяет мне предоставлять значения по умолчанию. Но дляOUTPUT параметр, что мне делать в хранимой процедуре, чтобы сделать ее необязательной, чтобы я не получил сообщение об ошибке ...

Процедура или функция Person_InsertPerson ожидает параметр @AddressId, который не был предоставлен.

Ответы на вопрос(5)

Ваш ответ на вопрос