AKTIFKAN PEMICU (Transact-SQL)
Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance
Mengaktifkan pemicu DML, DDL, atau masuk.
Sintaks
ENABLE TRIGGER { [ schema_name . ] trigger_name [ ,...n ] | ALL }
ON { object_name | DATABASE | ALL SERVER } [ ; ]
Argumen
schema_name
Adalah nama skema tempat pemicu berada. schema_name tidak dapat ditentukan untuk pemicu DDL atau masuk.
trigger_name
Adalah nama pemicu yang akan diaktifkan.
SEMUA
Menunjukkan bahwa semua pemicu yang ditentukan pada cakupan klausul ON diaktifkan.
object_name
Adalah nama tabel atau tampilan tempat pemicu DML trigger_name dibuat untuk dijalankan.
DATABASE
Untuk pemicu DDL, menunjukkan bahwa trigger_name dibuat atau dimodifikasi untuk dijalankan dengan cakupan database.
SEMUA SERVER
Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru.
Untuk pemicu DDL, menunjukkan bahwa trigger_name dibuat atau dimodifikasi untuk dijalankan dengan cakupan server. SEMUA SERVER juga berlaku untuk pemicu masuk.
Catatan
Opsi ini tidak tersedia dalam database mandiri.
Keterangan
Mengaktifkan pemicu tidak membuatnya kembali. Pemicu yang dinonaktifkan masih ada sebagai objek dalam database saat ini, tetapi tidak diaktifkan. Untuk mengaktifkan pemicu, menyebabkannya diaktifkan ketika pernyataan Transact-SQL yang awalnya diprogram dijalankan. Pemicu dinonaktifkan dengan menggunakan DISABLE TRIGGER. Pemicu DML yang ditentukan pada tabel juga dapat dinonaktifkan atau diaktifkan dengan menggunakan ALTER TABLE.
Izin
Untuk mengaktifkan pemicu DML, minimal, pengguna memerlukan izin UBAH pada tabel atau tampilan tempat pemicu dibuat.
Untuk mengaktifkan pemicu DDL dengan cakupan server (ON ALL SERVER) atau pemicu masuk, pengguna memerlukan izin CONTROL SERVER di server. Untuk mengaktifkan pemicu DDL dengan cakupan database (ON DATABASE), minimal, pengguna memerlukan izin UBAH PEMICU DDL DATABASE APA PUN di database saat ini.
Contoh
J. Mengaktifkan pemicu DML pada tabel
Contoh berikut menonaktifkan pemicu uAddress
yang dibuat pada tabel Address
di database AdventureWorks, lalu mengaktifkannya.
DISABLE TRIGGER Person.uAddress ON Person.Address;
GO
ENABLE Trigger Person.uAddress ON Person.Address;
GO
B. Mengaktifkan pemicu DDL
Contoh berikut membuat pemicu safety
DDL dengan cakupan database, lalu menonaktifkan dan mengaktifkannya.
CREATE TRIGGER safety
ON DATABASE
FOR DROP_TABLE, ALTER_TABLE
AS
PRINT 'You must disable Trigger "safety" to drop or alter tables!'
ROLLBACK;
GO
DISABLE TRIGGER safety ON DATABASE;
GO
ENABLE TRIGGER safety ON DATABASE;
GO
C. Mengaktifkan semua pemicu yang ditentukan dengan cakupan yang sama
Contoh berikut memungkinkan semua pemicu DDL yang dibuat di cakupan server.
Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru.
ENABLE Trigger ALL ON ALL SERVER;
GO
Lihat Juga
NONAKTIFKAN PEMICU (Transact-SQL)
UBAH PEMICU (Transact-SQL)
BUAT PEMICU (Transact-SQL)
JATUHKAN PEMICU (Transact-SQL)
sys.triggers (Transact-SQL)