У меня есть основная хранимая процедура, которая вставляет 3 поля varchar, имя, адрес и номер телефона и другие 3 поля, которые вставляют идентификатор из внешних ключей в таблицу, эти 2 поля внешнего ключа также используют хранимую процедуру вставки, чтобы вставить свои собственные данные. Как я могу вызвать эти хранимые процедуры из основного SP, чтобы вставить поля varchar и поля внешнего ключа, сгенерированные при их выполнении?Как вызвать хранимую процедуру из другой хранимой процедуры в SQL Server?
Table 1 Table 2 Table 3
id, id2, id3,
name1, name2, name3,
address1, address2, address3,
phoneNumber1, phoneNumber2, phoneNumber3
id2,
id3,
create procedure table1
@id int,
@name1 varchar(30),
@address1 varchar(100),
@phoneNumber1 varchar(30)
as
BEGIN
set nocount on;
Insert into table1
(id,
name,
address,
phoneNumber)
values(
@id,
@name,
@address,
@phoneNumber)
END
------After inserting the data into table 1, I want to call the SP of table 2 and 3---
EXEC SPTable2
Другие процедуры также вставлять данные в своих таблицах в основном я просто хочу выполнить их из основного SP, чтобы выполнить вставку трех полей varchar и идентификаторов таблицы 2 и 3 –
@arturor, когда вы говорите «данные в своих собственных таблицах», вы имеете в виду временные таблицы? Но опять же, если все дело в том, чтобы вызвать procs, чтобы заставить их делать свое дело самостоятельно, просто выполните 'exec yourprocname'. Надеюсь, вы не имеете в виду «глобальные временные таблицы», потому что это редко бывает хорошей идеей. Представьте, что ваш proc работает одновременно ... – Icarus
Нет, они не являются временными таблицами, и у них есть свой собственный SP для вставки данных. –