У меня есть приведенный ниже триггер SQL для поля SQL 2005, значение которого предполагается , чтобы помочь мне реплицировать определенную информацию о персонале в другую базу данных, которая будет использоваться для создания отчетов и для других различных целей в качестве ссылки.
У меня есть 1 БД с именем Connect, в которой текущее приложение манипулирует Персональными данными на tblPerson. У меня есть другая БД в том же физическом блоке с именем MATRIX, где новое приложение манипулирует данными. Я пытаюсь создать таблицу в MATRIX с именем tblIdentificationMap, в которой просто хранятся все различные идентификаторы, которые у нас есть, из разных приложений в доме.
Когда я включаю этот триггер и пытаюсь обновить tblPerson, я получаю следующую ошибку -> Msg 208, Level 16, State 1, Procedure tblPersonIDMap_OnUpdate, Line 15
Invalid object name 'MATRIX.dbo.tblIndentificationMap'.
Это мое утверждение ОБНОВЛЕНИЕ ->
` use Connect
update tblPerson
set MiddleName = 'Fakey'
where PersonID = 258243`
А это мой триггер ->
ALTER TRIGGER [dbo].[tblPersonIDMap_OnUpdate]
ON [dbo].[tblPerson]
AFTER UPDATE
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
UPDATE MATRIX.dbo.tblIndentificationMap
SET m.PersonID = i.PersonID
,m.FirstName = i.FirstName
,m.MiddleName = i.MiddleName
,m.LastName = i.LastName
FROM MATRIX.dbo.tblIdentificationMap m, inserted i, deleted d
WHERE d.PersonID = m.PersonID
END