Триггер не будет вставлять, используя данные из другого экземпляра \ DB - PullRequest
0 голосов
/ 10 марта 2020

Я пытаюсь запустить триггер вставки, когда создается новая запись. Эта запись будет использовать данные из другого экземпляра \ DB для вставки в другую таблицу. Я могу вставить запуск его как запрос, но как триггер он не будет запускаться или вставлять. Я ищу некоторые идеи относительно того, почему. Спасибо!

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[TriggerName]
   ON  [dbo].[Table] 
   AFTER INSERT
AS 
BEGIN
    SET NOCOUNT ON;

    WITH batch AS (
        SELECT              b.uniqueid
                            ,CASE WHEN b.versionnumber LIKE '%SOMETHING%' THEN '1' + SUBSTRING(REPLACE(bh.pvalue,'MIXER_',''),1,1) ELSE SUBSTRING(REPLACE(bh.pvalue,'SOMETHING',''),1,1) END AS MIXER


        FROM                inserted b
          INNER JOIN        table1 bh ON b.uniqueid = bh.Uniqueid

        WHERE               bh.DescriptAPI = 'Alias_mixer_class'
    )

    INSERT INTO BATCH_TRACKING
    (ORDER_ID, BATCH_ID, DATE_CREATED)

    SELECT          o.ORDER_ID
                    ,b.uniqueid
                    ,CURRENT_TIMESTAMP

    FROM            [INSTANCE\DB].ProdOrchTest.dbo.table3 o
      INNER JOIN    batch b on o.LINE_NUM = b.MIXER

    WHERE           o.LINE_POSITION = 0

END

1 Ответ

0 голосов
/ 10 марта 2020

Вы создали связанный сервер для получения удаленных данных? в противном случае вы не сможете запрашивать удаленные данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...