Megosztás a következőn keresztül:


DDL-triggerek implementálása

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példánySQL-adatbázis a Microsoft Fabricben

Ez a témakör a DDL-eseményindítók létrehozásához, a DDL-eseményindítók módosításához, valamint a DDL-eseményindítók letiltásához vagy elvetéséhez nyújt segítséget.

DDL-eseményindítók létrehozása

DDL-eseményindítók a Transact-SQL CREATE TRIGGER utasításával hozhatók létre.

DDL-eseményindító létrehozása

Fontos

Az eseményindítókból származó eredményhalmazok visszaadásának képessége az SQL Server egy későbbi verziójában lesz eltávolítva. Az eredményhalmazokat vissza adó eseményindítók váratlan viselkedést okozhatnak azokban az alkalmazásokban, amelyek nem azokkal való együttműködésre lettek tervezve. Kerülje, hogy új fejlesztési projektekben triggerek használatával adjon vissza eredményhalmazokat, és tervezze meg azoknak az alkalmazásoknak a módosítását, amelyek ezt jelenleg végzik. Ha meg szeretné akadályozni, hogy az eseményindítók eredményhalmazokat adjanak vissza az SQL Serveren, állítsa az eseményindítókból származó nem kívánt eredményeket 1-re. Ennek a beállításnak az alapértelmezett beállítása az SQL Server egy későbbi verziójában 1 lesz.

DDL-eseményindítók módosítása

Ha módosítania kell egy DDL-eseményindító definícióját, elvetheti és újra létrehozhatja az eseményindítót, vagy egyetlen lépésben újradefiniálhatja a meglévő eseményindítót.

Ha módosítja egy DDL-eseményindító által hivatkozott objektum nevét, módosítania kell az eseményindítót, hogy a szöveg tükrözze az új nevet. Ezért az objektum átnevezése előtt először jelenítse meg az objektum függőségeit annak megállapításához, hogy a javasolt módosítás hatással van-e az eseményindítókra.

Az eseményindítók a definíció titkosításához is módosíthatók.

Eseményindító módosítása

Eseményindító függőségeinek megtekintése

DDL-triggerek letiltása és elvetése

Ha már nincs szükség DDL-eseményindítóra, letilthatja vagy törölheti.

A DDL-eseményindító letiltása nem törli azt. Az eseményindító továbbra is objektumként létezik az aktuális adatbázisban. Az eseményindító azonban nem aktiválódik, ha a programozott Transact-SQL utasítások futnak. A letiltott DDL-triggereket újra lehet engedélyezni. A DDL-eseményindító engedélyezése ugyanúgy működésbe lép, mint amikor az eredetileg létre lett hozva. A DDL-eseményindítók létrehozásakor alapértelmezés szerint engedélyezve vannak.

A DDL-eseményindító törlésekor a rendszer elveti az aktuális adatbázisból. A DDL-eseményindító hatókörébe tartozó objektumokra vagy adatokra nincs hatással.

DDL-eseményindító letiltása

DDL-eseményindító engedélyezése

DDL-eseményindító törlése