Bu yazıda, Veri Tanımlama Dili, Veri Manipülasyon Dili, İşlem Kontrol Dili ve Veri Kontrol Dili hakkında konuşuyor olacağız
DDL (Veri Tanımlama Dili):
Veri Tanımlama Dili, veritabanı
yapısını veya şemasını tanımlamak için kullanılır. DDL ayrıca
verinin ek özelliklerini belirlemek için de kullanılır. Veri tabanı sistemi tarafından kullanılan depolama
yapısı ve erişim yöntemleri özel bir DDL tipinde bir dizi ifadeyle veri saklama
ve tanım dili olarak adlandırılır. Bu ifadeler, genellikle kullanıcılardan gizlenen
veritabanı şemasının uygulama detaylarını tanımlar. Veritabanında depolanan veri değerleri belirli
tutarlılık sınırlamalarını sağlamalıdır.
Örneğin, üniversitenin bir bölümdeki hesap bakiyesinin asla negatif olmamasını istediğini varsayalım. DDL, bu kısıtlamaları belirtmek için olanaklar sağlar. Veritabanı sistemi, veritabanını her güncellediğinizde bu kısıtlamaları kontrol eder. Genel olarak, bir kısıtlama veritabanına ilişkin keyfi bir belirteç olabilir. Ancak, keyfi tahminler test için maliyetli olabilir. Bu nedenle, veritabanı sistemi minimum ek yük ile test edilebilen bütünlük kısıtlamaları uygular.
Örneğin, üniversitenin bir bölümdeki hesap bakiyesinin asla negatif olmamasını istediğini varsayalım. DDL, bu kısıtlamaları belirtmek için olanaklar sağlar. Veritabanı sistemi, veritabanını her güncellediğinizde bu kısıtlamaları kontrol eder. Genel olarak, bir kısıtlama veritabanına ilişkin keyfi bir belirteç olabilir. Ancak, keyfi tahminler test için maliyetli olabilir. Bu nedenle, veritabanı sistemi minimum ek yük ile test edilebilen bütünlük kısıtlamaları uygular.
- Domain Constraints : Her özellikle (örneğin, tamsayı türleri, karakter türleri, tarih / saat türleri) olası değerlerin bir alanı ile ilişkilendirilmelidir. Bir özelliğin belirli bir alan için bir özellik olduğunu bildirmek, alabileceği değerler üzerindeki sınırlamalar olarak işlev görür.
- Referential Integrity: Belirli bir nitelik kümesi için bir ilişkide bir değerin göründüğünden, başka bir ilişkideki belirli bir dizi nitelikte de, yani Referans Bütünlüğü gibi göründüğünden emin olmak istediğimiz durumlar vardır. Örneğin, her ders için listelenen bölüm, gerçekten var olan bölüm olmalıdır.
- Assertions, veritabanının daima yerine getirmesi gereken herhangi bir koşuldur. Etki alanı kısıtlamaları ve Bütünlük kısıtlamaları, iddiaların özel bir şeklidir.
- Authorization: Kullanıcılar
arasında, veritabanındaki çeşitli veri değerlerinde izin verilen erişim
türlerini ayırt etmek isteyebiliriz.Bu farklılaşma Yetki açısından ifade edilir. En
yaygın varlık:
okuma yetkisi - bu okumaya izin verir fakat verilerin değiştirilmemesini sağlar; .
- CREATE : to create objects in database
- ALTER : alters the structure of database
- DROP : delete objects from database
- RENAME : rename an objects
CREATE TABLE department
(
dept_name CHAR(20),
building CHAR(15),
budget NUMERIC(12, 2)
);
DML (Veri Manipülasyon Dili):
DML ifadeleri şema nesnelerinde
verileri yönetmek için kullanılır.
DML iki türdendir -
DML iki türdendir -
1.
Prosedürel DML'ler : Bir kullanıcının hangi
verilere ihtiyaç duyulduğunu ve bu verilerin nasıl elde edileceğini
belirlemesini gerektirir.
2.
Declerative DML'leri (aynı zamanda İşlemsel DML'ler olarak da bilinir): Bir
kullanıcının bu verilerin nasıl alınacağını belirtmeden hangi verilere ihtiyaç
duyulduğunu belirlemesini gerektirir.
Beyannameli DML’lerin
öğrenilmesi ve kullanılması genellikle prosedürel DML’lerden daha kolaydır. Bununla
birlikte, bir kullanıcı verinin nasıl elde edileceğini belirtmek zorunda
olmadığından, veritabanı sisteminin verilere erişmek için etkili bir yol
bulması gerekir.
Bazı Komutlar:
- SELECT: retrieve data from the database
- INSERT: insert data into a table
- UPDATE: update existing data within a table
- DELETE: deletes all records from a table, space for the records remain
Tarih
bölümündeki tüm eğitmenlerin isimlerini bulan SQL sorgu örneği:
SELECT instructor.name
FROM instructor
WHERE instructor.dept_name = 'History';
Sorgu, dept_name'nin History olduğu tablo eğitmeninden gelen bu satırların alınmasını ve bu satırların name niteliklerinin gösterilmesi gerektiğini belirtir.
TCL (İşlem Kontrol Dili):
İşlem
Denetimi Dili komutları, veritabanındaki işlemleri yönetmek için kullanılır.
Bunlar, DML ifadeleri tarafından yapılan değişiklikleri yönetmek için
kullanılır. Ayrıca, ifadelerin mantıksal işlemlerle birlikte gruplandırılmasını
sağlar.
TCL komutlarına örnekler
- COMMIT: Commit komutu herhangi bir işlemi kalıcı olarak veritabanına kaydetmek için kullanılır
- ROLLBACK: Bu komut veritabanını son taahhüt durumuna geri yükler.
- Ayrıca bir kayıt noktasına atlamak için savepoint komutuyla birlikte kullanılır.
- SAVEPOINT:, bir işlemi geçici olarak kaydetmek için kullanılır. gerektiğinde bu
- noktaya geri dönebilmenizi sağlar
DCL (Veri Kontrol Dili):
Veri Kontrol
Dili, veritabanında depolanan verilere erişimi kontrol etmek için kullanılan
bilgisayar programlama diline benzer bir sözdizimidir (Yetkilendirme).
Özellikle, Structured Query Language (SQL) 'in bir bileşenidir.
DCL komutlarına örnekler:
- GRANT: belirtilen kullanıcıların belirtilen görevleri yapmasına izin ver.
- REVOKE: önceden verilen veya reddedilen izinleri iptal et.
Bir kullanıcı veya rolden ayrıcalıkların verilebileceği veya iptal edilebileceği işlemler hem Veri tanımlama dili (DDL) hem de Veri işleme dili (DML) için geçerlidir ve CONNECT, SELECT, INSERT, UPDATE, DELETE, EXECUTE ve USAGE.