Триггер для обновления таблицы с отметкой времени, когда данные вставляются в другую таблицу - PullRequest
0 голосов
/ 28 ноября 2018

Я очень плохо знаком с триггерами.нужна помощь здесь

У меня есть две таблицы: [dbo].[Demand_Request] и [dbo].[Modified_Demand_Request].

CREATE TABLE [dbo].[Demand_Request] 
(
    [CASE_ID] [INT] NULL,
    [TE_PART_NUMBER] [NVARCHAR](50) NULL,
    [VALUE] [FLOAT] NULL,
    [DEMAND_DATE] [DATETIME] NULL
) 

CREATE TABLE [dbo].[Modified_Demand_Request] 
(
    [CASE_ID] [INT] NULL,
    [TE_PART_NUMBER] [NVARCHAR](50) NULL,
    [VALUE] [FLOAT] NULL,
    [DEMAND_DATE] [DATETIME] NULL,
    [Modified_On] [DATETIME] NULL
) 

Когда данные вставляются в [dbo].[Demand_Request], я хочу добавить те же данные в таблицу [dbo].[Modified_Demand_Request] вдольс отметкой времени.

Ниже мой триггер, но он не работает:

CREATE TRIGGER [dbo].[Modified_Demand_Request1]
ON [dbo].[Demand_Request]
AFTER UPDATE
AS
     INSERT INTO [dbo].[Modified_Demand_Request] ([CASE_ID], [TE_PART_NUMBER],[VALUE], [DEMAND_DATE], [Modified_On])
         SELECT 
             [CASE_ID], [TE_PART_NUMBER], [VALUE],
             [DEMAND_DATE], GETDATE()
         FROM 
             INSERTED

Ответы [ 2 ]

0 голосов
/ 28 ноября 2018

Могу ли я знать, как вы вставляете данные.Я попытался так же, как показано ниже (с триггером «FOR INSERT») и смог получить данные в таблице Modified_Demand_Request.

    insert into [Demand_Request] values(1,'Test',1.0,GETDATE())
    insert into [Demand_Request] values(2,'Test1',1.0,GETDATE())
    insert into [Demand_Request] values(3,'Test2',1.0,GETDATE())
    insert into [Demand_Request] values(14,'Test2',1.0,GETDATE())
0 голосов
/ 28 ноября 2018

Попробуйте это FOR INSERT

Create Trigger [dbo].[Modified_Demand_Request1]
   on [dbo].[Demand_Request]
   FOR INSERT
   AS
     Insert Into[dbo].[Modified_Demand_Request] ([CASE_ID],[TE_PART_NUMBER],[VALUE],[DEMAND_DATE],[Modified_On])
       SELECT [CASE_ID],[TE_PART_NUMBER],[VALUE],[DEMAND_DATE],GETDATE()
       FROM INSERTED

для DEMO REXTESTER

Дополнительная справка: Триггер запуска для массовой вставки

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