sql >> Database >  >> RDS >> Sqlserver

Maak een trigger voor vóór het invoegen

Gebruik in plaats daarvan trigger en tabel ingevoegd zoals hieronder en probeer het eens.

CREATE TRIGGER INS_TABLE_1
ON mytable
INSTEAD OF INSERT
AS
BEGIN
    DECLARE @fn varchar(50),@ln varchar(50)
    SELECT @fn=column1 ,@ln=column12 from inserted
    IF (@fn IS NULL OR @ln IS NULL)
    BEGIN
        RAISERROR ('You are not allowed to Add These Data.', 10, 11)
    END
    ELSE
        INSERT INTO mytable (column1 ,column2) values (@fn,@ln)
END

De ingevoegde tabel slaat kopieën op van de betreffende rijen tijdens INSERT en UPDATE verklaringen. In plaats van trigger vervangt de huidige INSERT door de triggerdefinitie.




  1. MySQL VarChar 255 en hoger

  2. SQLite JSON_GROUP_OBJECT()

  3. Invoegen in tabel met behulp van matrixmethode met bovenliggende ID

  4. SCD-type 3