Я создал хранимую процедуру, которая будет иметь два запроса, эти два запроса обновят записи в двух таблицах.
Итак, я упомяну, что она показывает
Моя процедура похожа на
ALTER PROC UpdateMissingItemONPoe
@StoreID INT,
@Name VARCHAR(20)
AS
BEGIN
DECLARE @UpdateRec NVARCHAR(MAX) = '';
DECLARE @StoreIP SYSNAME = ''
SET @StoreIP = CASE @StoreID
WHEN 1111 THEN '[192.168.1.45].[Store1].[dbo]'
WHEN 2222 THEN '[192.168.2.45].[Store2].[dbo]'
WHEN 3333 THEN '[192.168.3.45].[Store3].[dbo]'
END
SET @UpdateRec = N' IF((SELECT NameID from '+@StoreIP+'.Details WHERE Name = '''+@Name+''') = 2 )
BEGIN
INSERT INTO ' + @StoreIP + '.PurchaseOrderEntry(
/* InsertField Name */
)
select
Name,
Standard,
Department,
Category,
SubDescription,
Rank
from
'+@StoreIP+'.Details
where
Name = '''+@Name+'''
INSERT INTO '+@StoreIP+'.HeadQuarter(
/* InsertField Name */
)
select
Name,
Standard,
Department,
Category,
SubDescription,
Rank
from
'+@StoreIP+'.Details
where
Name = '''+@Name+'''
END'
print @UpdateRec
EXEC sp_executesql @UpdateRec
END
Когда я выполняю эту хранимую процедуру, сообщение об ошибке не отображается.Но этот динамический запрос не имеет полного запроса при печати.
Напечатанный запрос похож на
INSERT INTO '+@StoreIP+'.PurchaseOrderEntry(
/* InsertField Name */
)
select
Name,
Standard,
Department,
Category,
SubDescription,
Rank
from
'+@StoreIP+'.Details
where
Name = '''+@Name+'''
INSERT INTO '+@StoreIP+'.HeadQuarter(
/* InsertField Name */
)
select
Name,
Standard,
Department,
Category,
Остальные строки отсутствуют