SQL 2008: Disable/enable trigger/constraint di seluruh tabel

Seperti biasa, saya suka mencatat di sini beberapa hal yang saya temui ketika main-main dengan komputer. Kali ini, saya dapat tugas meng-enable lagi seluruh trigger di semua tabel dalam sql2008. Masalahnya, ada lebih dari 50 tabel yang harus saya enable. Ngga lucu kalau saya harus enable satu per satu kan. Itu baru urusan trigger, bagaimana dengan constraint-nya? Cape deh.

Tapi ternyata ada tuh caranya. Syntax-nya untuk meng-enable seluruh trigger itu cuma begini:

sp_MSforeachtable “ALTER TABLE ? ENABLE TRIGGER ALL”

Sedangkan untuk meng-enable seluruh constraint itu begini:

sp_MSforeachtable “ALTER TABLE ? WITH CHECK CHECK CONSTRAINT ALL”

Jadi ternyata di SQL2008 sudah ada sp_Msforeachtable yang built-in untuk melakukan operasi ke seluruh tabel dalam suatu database. Setelah itu, ada wildcard berupa tanda-tanya (?) yang berarti seluruh tabel.
Oya, sebelum lupa, syntax untuk disable trigger dan constraint itu begini:

sp_MSforeachtable “ALTER TABLE ? DISABLE TRIGGER ALL”
sp_MSforeachtable “ALTER TABLE ? NOCHECK CONSTRAINT ALL”

.

One thought on “SQL 2008: Disable/enable trigger/constraint di seluruh tabel

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s