Trigger DDL Membuat Trigger

PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 133 seluruh kejadian DDL DDL event, seperti pembuatan create, perbaruan struktur alter dan penghapusan drop seluruh tabel yang ada di dalam database db_commerce . Perta a, di uat se uah ta el ddl_log u tuk e yi pa pe atata ya g dihasilka trigger log . Selanjutnya, perhatikan kode SQL pembuatan trigger log erikut i i. Gambar 5.60: Proses pembuatan trigger log Untuk melihat hasil pencatatan yang dihasilkan trigger log , berikut diberikan contoh kode SQL untuk membuat create dan menghapus drop se uah ta el de ga a a TestTable di dala database db_commerce . Gambar 5.61: Proses pengujian testing trigger log PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 134 Pada Gambar 5.61 di atas menunjukkan bahwa seluruh event DDL yang terjadi pada seluruh komponen database db_commerce , baik berupa tabel atau view, maka trigger log aka terpi u da melakukan pencatatan sesuai event yang terjadi.

5.8.3 Trigger LOGON

Trigger LOGON melakukan eksekusi stored procedure bawaan sistem dalam menanggapi event LOGON yang dibangkitkan ketika sebuah sesi pengguna user session berhasil dibentuk dengan sebuah instan dari SQL Server. Trigger LOGON aktif setelah fase otentikasi login dalam tahap akhir, tetapi sebelum sesi pengguna benar-benar terbentuk. Oleh karena itu, semua pesan yang dihasilkan oleh trigger yang biasanya sampai ke pengguna, seperti pesan error dan pesan dari statemen PRINT, dialihkan ke catatan kesalahan error log SQL Server. Trigger LOGON tidak aktif jika otentikasi gagal. Anda dapat menggunakan trigger LOGON untuk mengaudit dan mengontrol sesi server, seperti penulusuran aktifitas login, membatasi login ke SQL Server, atau pembatasan jumlah sesi untuk login tertentu. Berikut ini merupakan sintaks umum pembuatan trigger LOGON. Trigger on a LOGON event Logon Trigger CREATE TRIGGER trigger_name ON ALL SERVER [ WITH logon_trigger_option [ ,...n ] ] { FOR| AFTER } LOGON AS { sql_statement [ ; ] [ ,...n ] | EXTERNAL NAME method specifier [ ; ] } logon_trigger_option ::= [ ENCRYPTION ] [ EXECUTE AS Clause ] Untuk contoh kali ini akan dibuat sebuah trigger untuk membatasi waktu login user tertentu. Batasan yang dimaksud adalah jam login, misalkan user terte tu, a ggap saja TestUser , isa logi ke SQL Server hanya pada pukul 10:00 WIB sampai dengan 18:00 WIB. Pertama kali yang perlu dibuat adalah membuat login user baru yang akan dibatasi jam loginnya. Ada 2 cara untuk membuat login baru, yaitu: dengan dengan mengetikkan baris perintah SQL langsung melalui query editor yang tersedia atau menggunakan wizard melalui PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 135 aplikasi GUI. Berikut adalah perintah SQL untuk membuat login baru de ga a a TestUser . USE [master] GO --Create the login on your servel called TestUser CREATE LOGIN [TestUser] WITH PASSWORD=NAdmin2345 ,DEFAULT_DATABASE=[master] ,DEFAULT_LANGUAGE=[us_english] ,CHECK_EXPIRATION=OFF ,CHECK_POLICY=OFF GO Adapun dengan wizard melalui aplikasi GUI langkah-langkahnya adalah sebagai berikut. 1 Setelah berhasil masuk ke SQL Server, klik kanan submenu Security » Logins, pilih New Login.... Gambar 5.62: Proses membuat login baru 2 Setelah muncul jendela Login – New, ketik TestUser pada kolom Login name.