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.