DCL (Data Control Language - Veri Kontrol Dili)

Eyl 08, 2013
DCL, bir veritabanı ile ilişkili kullanıcıları ve rollerin izinlerini değiştirmek için yani verilere erişim yetkilerini düzenlemek amacıyla kullanılır.

Üç temel komutu vardır:

Grant: Belirtilen kişiye ya da gruba veri kullanma ve komut çalıştırma izni verir.

Deny: İşlem yapmak için verilen izinleri kısıtlar ya da kaldırır.

Revoke: Verilen tüm izinleri iptal eder.

Örneğin, şu tablo ele alınsın:

Kullanıcının bu tabloda seçme komutunu (SELECT) kullanarak sorgulama yapabilmesi için ona izin verilmesi gerekir. "veritabani" , tablonun içinde bulunduğu veritabanı olmak üzere ve "kullanici" da kullanıcı ismi olmak üzere; 

USE veritabani
GRANT SELECT ON TABLE1 TO kullanici
GO

ifadesi ile kullanıcıya veritabanının TABLE1 adlı tablosu üzerinde SELECT ifadesini kullanma hakkı verilmiş olur.

Kullanıcının,  TABLE1 üzerinde kendisine verilen  SELECT hakkını kullanamaması isteniyorsa, o hakkı yoksaymak için şu ifade yazılır:

USE veritabani
DENY SELECT ON TABLE1 TO kullanici
GO


Kullanıcının aynı tablo üzerinde verilen SELECT hakkını tamamen kaldırmak için ise REVOKE  komutu kullanılarak şu ifade yazılır:

USE veritabani
REVOKE SELECT ON TABLE1 FROM kullanici
GO