Триггер обновления аукциона дата дата diffiff - PullRequest
0 голосов
/ 24 апреля 2020

Я создал триггер, чтобы проверить разницу во времени, поэтому по истечении времени аукцион закрывается, поворачивая 0 в 1. Но когда я обновляю таблицу, мой триггер не срабатывает. Надеюсь, кто-нибудь поможет мне с этим.

          CREATE TABLE Voorwerp (
          voorwerpnummer                    BIGINT                   IDENTITY(30068720558,1)                  
          NOT NULL,
           titel                            VARCHAR(100)                                                      
           NOT NULL,
          beschrijving                      VARCHAR(max)                                                      
          NOT NULL,
          Startprijs                        NUMERIC(10,2)                                                     
          NOT NULL,
          Betalingswijze                    VARCHAR(20)                                                       
          NOT NULL,
          betalinginstructie                VARCHAR(80)                                                       
          NULL,
          plaatsnaam                        VARCHAR(28)                                                       
          NOT NULL,
          Land                              VARCHAR(35)                                                       
          NOT NULL,
         Looptijd                           TINYINT                  DEFAULT ((7))                            
         NOT NULL,
         LooptijdbeginDag                   DATE                 DEFAULT GETDATE()                            
         NOT NULL,
         LooptijdbeginTijdstip          TIME(0)     DEFAULT convert(time,getdate())                       
         NOT NULL,
         Verzendkosten                  NUMERIC (8,2)                                                     
         NULL,              
         verzendinstructies             VARCHAR (125)                                                     
         NULL,
         Verkoper                           VARCHAR (255)                                                     
         NOT NULL,
          Koper                         VARCHAR (255)                                                     
          NULL,
         LooptijdeindeDag                   AS DATEADD(DAY,Looptijd,looptijdbeginDag),                                                                                                                   
         looptijdeindeTijdstip          TIME(0)    DEFAULT convert(time,getdate())                        
         NOT NULL,
         VeilingGesloten                     BIT                                                              
         NOT NULL,
         Verkoopprijs                       NUMERIC(10,2)                                                     
         NULL,




        CREATE TRIGGER Trigger_IsVeilingGesloten ON dbo.Voorwerp /* AF3 */
        AFTER UPDATE
        AS
        BEGIN
        DECLARE @Veilinggesloten bit
        DECLARE @Voorwerpnummer bigint
        DECLARE @LooptijdeindeDag date
        DECLARE @LooptijdeindeTijdstip time
        DECLARE @Looptijd tinyint
        DECLARE @datediff int
        DECLARE @timediff int

        SELECT @datediff = DATEDIFF(DD,GETDATE(),@LooptijdeindeDag) From inserted
        SELECT @timediff = DATEDIFF(ss,GETDATE(),@LooptijdeindeTijdstip) From inserted
        SELECT @Veilinggesloten = VeilingGesloten FROM inserted
        SELECT @Voorwerpnummer = Voorwerpnummer FROM inserted
        SELECT @LooptijdeindeDag = LooptijdeindeDag FROM inserted
        SELECT @Looptijd = Looptijd FROM inserted
        SELECT @LooptijdeindeTijdstip = LooptijdeindeTijdstip FROM inserted
                                                           S
        BEGIN
        IF(@Veilinggesloten = 0 AND @datediff<=0 AND @timediff<=0)
        BEGIN
        UPDATE Voorwerp SET VeilingGesloten = 1 WHERE Voorwerpnummer = @Voorwerpnummer
        END;
        END;
        END;
         GO
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...