sql >> Databáze >  >> RDS >> Sqlserver

SQL Server – PŘED INSERT Trigger

Otestujte prosím následující SQL Server namísto Trigger, který kontroluje první tabulku podrobností. V případě, že v Podrobnosti chybí data, vloží tuto tabulku. Jako druhý krok pokračuje vkládáním do tabulky dovedností

CREATE Trigger MySkillsInsteadOfInsert on dbo.MySkills Instead Of Insert
AS
Begin

    insert into MySkills_details (
        EmpId -- and other relevant columns
    )
    select i.EmpId -- and other relevant columns
    from inserted i
    left join MySkills_details d on i.EmpId = d.EmpId
    where d.EmpId is null

    Insert Into MySkills(EmpId) -- and other relevant columns
    Select EmpId -- and other relevant columns
    From inserted i;

End

Další ukázky na SQL Server namísto spouštěče viz uvedený příklad.

Ale vezměte prosím na vědomí má slova, myslím si, že to bude alternativní návrh, který ponechá dovednosti v jiné hlavní tabulce. A před vložením do podrobností obecně zkontrolujeme, zda hlavní tabulka existuje nebo ne. Takže vaše ovládání obecně může běžet v opačně. Uživatelé obecně vkládají kmenová data jako první. V tomto případě data tabulky dovedností. Poté se vyplní podrobnosti.




  1. Zdá se, že webová aplikace [] spustila vlákno s názvem [vlákno čištění opuštěného připojení] com.mysql.jdbc.AbandonedConnectionCleanupThread

  2. Django s aplikací PostgreSQL na Heroku se nesynchronizuje

  3. Zobrazit položky, které mám společné s uživatelem, oddělené podle hodnocení Líbí se a Nelíbí se mi

  4. odstranit mezery v automatickém přírůstku