Veri Tipleri

advertisement
VERİTABANI
Veritabanı Bileşenleri
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
TABLOLAR
Veritabanının en temel bileşeni "Tablo" dur. Tablolarda saklanan veriler
veritabanın diğer bileşenlerinin (sorgular, saklı yordamlar, görünümler,vb)
oluşmasını sağlar.
Bu nedenle veritabanının hız/performans ve verimliliği tablolarla
doğrudan ilişkilidir. Verimli bir veritabanı tasarımı için "Tablo" yapısını iyi
kavrayıp anlamak gerekmektedir.
Tablo; veritabanına konu olan herhangi bir varlığa ait niteliklerin, düzenli
ve anlamlı bir şekilde bir arada tutmasını sağlayan varlıklar topluluğudur.
Tablo; kayıt-satır (record) ve sütun-bilgi alanlarından (column-field)
oluşur. Sütunlar o varlığa ait nitelikleri ifade eder ve her kayıt bir varlık
demektir.
HİYERARŞİK VERİTABANI MODELİ
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Tanımı daha iyi kavramak için personel bilgilerinin tutulduğu bir tablo
tasarımını inceleyelim. Öncelikle tasarım aşamasında personel bilgilerini
oluşturan ad, soyad, doğum tarihi, doğum yeri, vb. nitelikler belirlenir.
Belirlenen bu nitelikler bilgi alanlarını (field) oluşturur.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
VERİ TİPLERİ (DATA TYPE)
Veri tipi olarak; adlandırılan kavram, belirli kıstaslara göre sınırlandırılmış
farklı türlerdeki değerleri ifade etmektedir. Tablolarda tutulacak verilerin
tasarımı yapılırken veri tiplerine dikkat edilmelidir.
Örneğin "Personel" tablosu oluşturulurken, Personel Adı, Soyadı ve
Doğum Yeri için "Metin", Doğum Tarihi için "Tarih" ve "ID"si için de "Sayı"
veri tipleri seçilmelidir.
Veri tipine dikkat edilmeksizin oluşturulan veritabanı yönetim sistemleri;
performans, güvenlik, verimlilik, vb. yönlerden eksiklik gösterecektir. Veri
tipleri kullanımlarına ve saklanma biçimine göre seçilmektedir. Yoğun
verilerin tutulduğu veritabanlarında veri tipleri daha büyük öneme sahip
olmaktadır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
VERİ TİPLERİ (DATA TYPE)
Veritabanı sistemlerindeki gelişmeler ve uygulamalardaki gereksinimler
doğrultusunda çeşitli veri tipleri oluşmuştur. Veri tipleri;
• Metinsel
• Sayısal
• Tarih - Zaman
• İkili Veri Tipler
• Diğerleri
olarak sınıflandırılabilir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Metinsel Veri Tipleri
Veri hem nümerik (sayısal), hem de alfanümerik (harf) değerlerden
oluşuyorsa metinsel veri tipi kullanılır. Metinsel veri tipleri karakter,
sembol, sayı ve bunların birleşimlerini depolamak için kullanılan veri
tipleridir.
CHAR:
Girilen her karaktere karşılık olarak 1 byte yer tutan en fazla 800
karaktere kadar veri saklayabilen veri tipidir. Belirtilen uzunlukta veri
girilmesine olanak sağlar. Uzunluk değeri, kaydedilecek verinin
uzunluğundan büyük olduğunda kalan alanlar boşluk şeklinde doldurulur.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Örneğin "ADI" alanı için tanımlı veri tipi uzunluğu 5 karakter olarak
seçilsin.
Bu alana veri kaydedilmesi aşağıdaki gibidir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
VARCHAR:
Bu veritabanı char veri tipin de olduğu gibi her karakter 1 byte yer kaplar
ama en üst sınır değer aşılmadığı sürece değişik uzunluklardaki verilerin
girilmesine olanak sağlar.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
TEXT:
8000 karakterden fazla değer alan veri tipidir.
NCHAR:
CHAR veri tipinden farklı olarak UNICODE karakter setini kullanır. Bu
nedenle her karakter için 1 byte yerine 2 byte yer tutar. En fazla 4000
karakter depolayabilir.
NVARCHAR:
UNICODE metin değerlerini depolamak için kullanılır ve en fazla 4000
karakter depolayabilir.
NTEXT:
4000 karakterden daha fazla değer alabilir ve UNICODE metin saklayabilir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Sayısal Veri Tipleri
Genel olarak sayısal verilerin ve karşılaştırma gibi işlemlerde kullanılacak veri
tipleridir. Sayısal veri tipleri ONDALIK ve TAMSAYI olarak ikiye ayrılmaktadır.
Tam Sayı Veri Türleri
Negatif ve Pozitif tam sayıları ifade eder.
Bit: Fiziksel olarak 1 byte yer tutan ve 1 ya da 0 değer alan değer tipleridir.
Boolean veri tipiyle aynıdır. (True/False)
TINYINT: 1 byte yer tutan ve 0 ile 255 arasında değer alan değer türüdür.
SMALLINT: 2 byte yer tutan -32.768 ile 32.767 aralığında değer alan veri tipidir.
INT: 4 byte yer tutan ve -2.147.483.648 ile 2.147.483.647 arasında değer alan veri
türüdür.
BIGINT:
8
byte
yer
tutan
ve
-9.223.372.036.854.775.808
9.223.372.036.854.807 aralığında değer alan veri türüdür.
ile
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Ondalık Veri Türleri
Ondalık sayısal değerleri depolayabilen veri tipleridir. Veri tabanlarında ondalık
veri tipleri, rasyonel ve yaklaşık değer tipleri olarak ikiye ayrılır.
Kesir Ondalık Sayı Veri Tipleri
SMALLMONEY: 4 byte veri tipi depolayabilir ve -214.748.3648 ile 214.748.3647
arasında değer alan veri tipidir.
MONEY:
8
byte
yer
tutan
ve
-9.223.372.036.854.775.808
9.223.372.036.854.775.807 arasında değer alan veri tipidir.
ile
DECIMAL: Bu veri tipi özel bir tip olup iki parametre almaktadır ve basamak
sayısında göre yer tutan veri türüdür. Örneğin; 10.000,0045 verisini saklayabilmek
için virgülden öncesi ve sonrası için Alanadi(5,4) diye bir tanımlama
gerekmektedir.
NUMERIC: DECIMAL veri tipine benzeyen bir veri türüdür. Aynı şekilde kullanılır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Yaklaşık Ondalık Sayı Veri Tipleri
Bu veri tipleri bilimsel gösterimleri ile depolanabilen ve diğer veri tiplerine göre
depolanması çok hassas olan veri tipleridir.
FLOAT: Veritabanında 4 ile 8 byte arasında yer tutan veri tipidir.
REAL: Veritabanında 4 byte yer tutan veri türüdür.
Tarih - Zaman Veri Tipleri
Veritabanında tarih ve zaman bilgilerini tutmak amacıyla kullanılan veri türleridir
ve SMALLDATETIME ve DATETIME veri tipi olarak iki şekilde kullanılmaktadır.
SMALLDATETIME: 4 byte yer kaplar ve 1 Ocak 1990 ile 6 Haziran 2079 arasında
değer almaktadır.
DATETIME: Bu veri tipide aynı şekilde 4 byte yer tutar ve 1 Ocak 1753 ile 31 Aralık
9999 arasında değer alan veri türüdür.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İkili (Binary) Veri Tipleri
Değerleri veritabanına binary halde saklamak için kullanılmaktadır.
BINARY: dosyaları(binary data) saklamak için kulanılır. binary(n) şeklinde n değeri
1 ile 8000 arasında değer alır. n bayt kadar yer kaplar.
VARBINARY: dosyaları(binary data) saklamak için kullanılır. binary’den farklı
olarak boyutu kaydedilen dosyanın boyutuna göre değişir. varbinary(n) şeklinde n
değeri 1 ile 8000 arasında değer alır. varbinary(MAX) olarak kullanıldığında
maksimum 2,147,483,647 bayt (2 GB) büyüklüğünde dosya kaydedilebilir.
IMAGE: Bu veri tipi 2GB'ta kadar veri saklayan binary veri türüdür.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Diğer Veri Tipleri
Yukarıda bahsedilen veri tipleri genel olarak tüm veritabanı yönetim
sistemlerinde kullanılmaktadır. Bunların dışında kullanılan veritabanı yönetim
sistemine göre desteklenen veri türleri de vardır.
TABLE: Sanal bir tablo gibi çalışan bir veri tipidir.
TIMESTAMP: İçerisinde bulunduğu veritabanının, işlem takip sistemi gibi veri
tiplerini saklayan veri tipidir.
XML: Bu veri tipi MSSQL Server 2005 ile birlikte gelmiştir ve XML verilerini
depolamak amacıyla kullanılan bir veri tipidir. 111 şeklinde xml dataları saklar ve
tablo ve satırlarda sorgu yapmadan, query() metoduyla, kaydettiğimiz xml’in
içindeki datalara ulaşabiliriz.
CURSOR: Bir sonuç kümesine satır veya hücre düzeyinde erişebilmemizi
sağlayabilen veri tipidir.
Uniqueidentifier: 6F9619FF-8B86-D011-B42D-00C04FC964FF gibi bir GUID
tipindeki verileri tutar. C#’taki karşılığı GUid’tir. Guid, harf ve sayılardan oluşan
eşsiz bir datadır. İki Guid’in birbiri ile eşit olmayacağı garantidir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Veri tipleri genel olarak üçe ayrılır.
•
Basit veri tipleri
•
Karmaşık veri tipleri
•
Özel veri tipleri
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Veri tipleri genel olarak üçe ayrılır.
Basit veri tipleri
Metin, Sayı, Tarih-Zaman vb. bilgilerin tutulduğu veri tipleridir.
Karmaşık veri tipleri
Karmaşık veri tipleri nesne veri tiplerini kapsamaktadır. Farklı veritabanı yönetim
sistemlerinde farklı tanımlamalar yapılmaktadır. Aşağıda karmaşık veri tiplerine
birkaç örnek verilmektedir.
İkili Nesneler (Binary Objects)
Grafik gibi veriler veritabanında büyük yer kaplamaktadır. Bu tipteki verilerin
saklanması çeşitli sorunlara neden olabilir. Bu nedenle bu gibi verilerin
saklanması için ikili nesneler (binary objects) veri tipi kullanılmaktadır. Bu veri tipi
ile depolama alanı azaltılarak büyük formattaki ses ve görüntü dosyaları gibi
öğeler saklanabilmektedir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Referans İşaretçileri (Reference Pointers)
C programlama dilinde verinin diskte veya programcıda kayıtlı olduğu adres
bilgisini belirten veri tipidir. Bazı veritabanı yönetim sistemi yazılımları veriyi
diskte bir yerde tutarak, veritabanına sadece verinin diskte bulunduğu adresi
kaydeder. Genellikle statik nesnelerin kaydedilmesinde kullanılır.
Kullanıcı Tanımlı Veri Tipleri
Bazı veritabanı yönetim sistemi yazılımları kullanıcıların kendilerine özgü veri
tipleri tanımlamasına izin verir.
Özel Veri Tipleri
Karmaşık verilerin veritabanında tanımlanmasında kullanılan veri tipleridir.
Örneğin XML verilerin, mekânsal verilerin ve multimedya nesnelerinin
tanımlanmasında kullanılır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Kısıtlayıcı (Constraint)
Bir veritabanında saklanacak verinin belirli kısıtlamalarla girilmesini sağlayan
kurallara kısıtlayıcı denir. Bunun için ilgili tabloda kısıtlamanın yapılacağı alana
girilecek olan değerleri sınırlayan bir kural yazılır. Örneğin; alanın boş
geçilmemesi, 0'dan büyük rakamların girilmesi vb.
Kısıtlayıcılar kullanılarak tanımlanan alana yanlış verinin girilmesi engellenir ve
verinin doğru şekilde kaydedilmesi sağlanır. Yanlış bir veri tabloya girilmek
istendiğinde veritabanı yönetim yazılımı hata verir. Yanlış verilerin tabloya
kaydedilmesi engellendiği için veri tutarlılığı sağlanmış olur. Örneğin il bilgilerinin
bulunduğu tabloda plaka no girilen alan için rakamsal olarak 1 ile 81 arasında bir
kısıtlayıcı tanımlanırsa, kullanıcı 1 ile 81 değerleri arasındaki değerler dışında veri
giremeyecektir. Bu şekilde veri henüz giriş aşamasındayken kontrol edilerek doğru
verinin girilmesi sağlanmış olur.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Kısıtlayıcı (Constraint)
MS Access veritabanı yönetim sistemi yazılımı üzerinde il tablosu oluşturulmuş ve
plaka no girilen alan için bir kısıtlama tanımlanarak kullanıcıların yanlış veri girişi
engellenmiş ve plaka no alanına 1 ile 81 arasında verilerin girilmesi zorunlu hale
getirilmiştir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Anahtarlar (Key)
Tabloları daha etkin bir şekilde kullanılabilmesini sağlayan, bir kayda ait bilgileri
tek başına temsil edebilecek alanlardan biri veya birkaçı için tanımlanan özel bir
çeşit kısıtlayıcıdır. Anahtarlar, "İlişkisel Veritabanı" yapılarının en temel bileşenidir.
Anahtar olarak tanımlanan alan veya alanlara aynı verinin girilmesi mümkün
değildir. Böylelikle aynı verinin birkaç kez girilmesi engellenerek veri tekrarının
oluşması engellenir.
Anahtar olarak belirlenecek alan veya alanlar belirlenirken dikkat edilmesi
gereken en önemli nokta seçilen alanların gerçekten o kaydı temsil edip
etmediğidir.
Örneğin vatandaşların kimlik bilgilerinin tutulduğu kimlik paylaşım sistemi veri
tabanında "T.C Kimlik Numarası", öğrenci bilgilerinin tutulacağı tabloda "Öğrenci
No" alanı anahtar olarak seçilebilir. Çünkü aynı kimlik numarası ya da Öğrenci
Numarasına sahip başka bir kişi olamaz. Bu alanlar anahtar alan olarak seçilerek
tekrar kayıtlarında önüne geçilmiş olur.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Anahtarlar (Key)
Dört çeşit anahtar bulunmaktadır.
•
Birincil Anahtar
•
Tekil Anahtar
•
Bileşik Anahtar
•
Yabancı Anahtar
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Birincil Anahtar
Tabloda bir ya da birden fazla alanın ortak olarak işaretlenmesiyle oluşan ve o
kaydı temsil eden alanlardır. Birincil anahtar olarak tanımlanan alandaki verilerin
tekrarlanmaması gerekir. Bir tabloda birincil anahtar kullanılarak yinelenen
kayıtlar engellenmiş olur. Örneğin il tablosunda il plaka kodu birincil anahtar
olarak tanımlanabilir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Tekil Anahtar (Unique Key)
Tabloda tekil anahtar olarak tanımlanan alana bir değer yalnızca bir defa
girilebilir. Aynı değerin tekrar girilmesine izin verilmediği için veri tekrarının
önüne geçilmiş olur. Birincil anahtardan tek farkı tekil anahtar olarak tanımlanan
alan NULL (boş) değeri alabilir ve sadece bir alandan oluşur.
Bileşik Anahtar (Composite Key)
Bir tabloda birden fazla alan için anahtar tanımlaması yapılırsa bu anahtarlara
bileşik anahtar adı verilir. Bu alanlar genelde birincil anahtarın kullanılmadığı veya
kullanılmak istenilen verilere hızlı erişimin sağlanmasının istendiği durumlarda
kullanılır. Kişi kimlik bilgilerinin tutulduğu veritabanında ad ve soyad alanları
anahtar olarak tanımlanmıştır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
Yabancı Anahtar (Foreign Key)
Yabancı anahtarlar da bütün anahtar tipleri gibi tabloda veri tutarlılığının
sağlanması için kullanılır. Yabancı anahtar tanımlayabilmek için birbiriyle ilişkili
olması planlanan en az iki tablonun olması gerekmektedir. İki tabloda da bulunan
aynı alan yabancı anahtar olarak tanımlanabilir. Yabancı anahtar, tablolar arasında
ilişki kurmaya yarar. Örneğin personel tablosu ile bordro tablosunu ele alalım.
Personel tablosu ile bordro tablolarında personel no alanı aynıdır. Bu alan iki
tablo arasında ilişki kurulmasını sağlar. Personel tablosundaki "Personel No" alanı
birincil anahtar iken bordro tablosunda bulunan "Personel No" alanı yabancı
anahtardır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
SORGULAR
Veritabanında tüm işlemler sorgular yardımıyla gerçekleştirilir. Yeni bir
veritabanının oluşturulması, tabloların yaratılması, veri ekleme, güncelleme ve
silme işlemlerinin gerçekleştirilmesi vb. işlemler, sorgularla gerçekleştirilir.
Sorgu yazım kurallarına uyulması, veritabanı performansı açısından önemlidir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İNDEKSLER
İndeksler tablolar için kullanılan veritabanı nesneleridir. Aranılan verilere daha
hızlı ulaşmak için kullanılır. Özellikle üzerinde çok arama yapılacak alan veya
alanlar üzerinde indeks oluşturmak, veritabanında yapılacak olan sorgulama
işlemlerini hızlandırır.
Veritabanındaki indeksler de kitapların arka sayfalarında bulunan indeksler gibi
çalışırlar. Kitabın indeksinde kitapta bulunan konular ve bu konuların hangi
sayfada olduğu ile ilgili bilgiler mevcuttur. Bu nedenle kitapta aranılan konuya
kitabın indeksinden kolayca ulaşılabilir. İndeks sayesinde konuyu bulmak için tüm
kitabı sayfa sayfa incelemeniz gerekmez. Böylelikle aradığınız bilgiye çok daha
hızlı ulaşabilirsiniz. Veritabanındaki indeksler de benzer biçimde kayıtların yeri ile
ilgili bilgileri kullanarak aranılan kayda çok daha hızlı ulaşılmasını sağlar.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İndex Türleri
Birincil İndeks; Tabloda bulunan anahtar alan üzerinden gerçekleştirilen indeks
türüdür.
İkincil İndeks; Tabloda anahtar olmayan alanlar üzerinden gerçekleştirilen
indekslere denir.
İndeks Kullanmanın Yararları
İndeksler tablodaki veriler üzerinde çalıştırılacak sorguların çok daha hızlı
çalışmasını sağlarlar. Birkaç yüz kayıttan oluşan bir veritabanında sorgulama
işleminin hızı sorun olmayabilir ancak kayıt sayısının çok fazla olduğu veritabanı
sistemlerinde kesinlikle indekslere gereksinim vardır. İndeksler veritabanında
sorgulama işlemlerinin performansını arttırır.
İndeks Kullanmanın Zararları
İndeks kullanımı veritabanında sorgulama performansını artırmak gibi önemli bir
işlev görürken sakıncalarıda yok değildir. Veritabanında yapılacak her kayıt
eklemesi ve güncellemesi ile birlikte indeks yeniden güncelleneceğinden
veritabanında gerçekleştirilecek olan ekleme ve güncelleme işlemlerinin
yavaşlamasına neden olacaktır.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İndeks Ne Zaman Kullanılır?
İndeks kullanımının ne zaman yapılacağına karar vermek için veritabanında
yapılacak sorgulama ve sıralama işlemlerinin hızı kontrol edilmelidir. Eğer bu
işlemler istenilen hızdan yavaş gerçekleşiyor ise bu durumda indeks kullanılabilir.
Ancak gereksiz indeks kullanımından kaçınılmalıdır. Veritabanına indeks eklemek
veya indeksi kaldırmak veritabanı yönetim sistemleriyle kolayca yapılabilir. Bir
veritabanında indeksin kaldırılması veri kaybına neden olmaz. Temelde
indekslerin şu üç işlevi vardır;
•
Sorgulama süresini kısaltır
•
Tekil indeksler tabloda birincil anahtar alanlar oluşturarak veri bütünlüğünün
sağlanmasında kullanılabilir.
•
Veritabanında bulunan kayıtların tüm kayıtlar içindeki sırasını gösterirler.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
GÖRÜNÜMLER (VIEW)
Görünümler veritabanı sistemlerinin önemli bileşenlerindendir. Birden fazla
tablodan, belirli kurallara göre istenilen alanların seçilerek oluşturulduğu tablo
görüntüleridir. Görüntü tablolarında veri bulunmaz. Oluşturulan, tablonun sadece
görüntüsüdür. İlişkisel veritabanı yapılarında, verilerin görüntülenmesinde
kolaylıklar sağlar. Görüntü tablosuna veri girişi, veri güncellemesi ya da veri silme
işlemleri yapılamaz. Veri tablolarında yapılan değişiklikler birebir görüntü
tablosuna yansır.
Standart tablolara göre bazı avantajları vardır. Kısaca bunlar;
•
Kullanıcıların tablonun sadece belirli alanlarını görmesi sağlanabilir.
•
Birden fazla tablo çeşitli sorgularla birleştirilip istenilen veriler tek bir tablo
olarak gösterilebilir.
•
Tablolar birleştirilerek farklı bir tablo şeklinde sunulabilir.
•
Kompleks veriler daha kolay şekilde gösterilebilir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İLİŞKİLENDİRME (JOIN)
Veritabanını oluşturan iki veya daha fazla tablo üzerinde birlikte sorgulama
yapma işlemine ilişkilendirme denir. İlişkisel veritabanlarının en temel özelliği
birden fazla tablo üstünde aynı anda birlikte işlem yapabilmektir. Birden fazla
tablo üzerinde aynı anda işlem yapılabilmesi veri tekrarlarını önler ve verilerin
yönetimini kolaylaştırılır. Tablolar üzerinde ilişkilendirme anahtar alanlar
üzerinden gerçekleştirilir. Örneğin personel ve bordro tablolarını ele alacak
olursak. Personel tablosunda personel kimlik bilgilerine bordro tablosunda da
personel ile ilgili bordro bilgilerine ulaşılabilmektedir. Her iki tabloda da bulunan
"Personel No" ile ilişkilendirilerek sorgulama yapılabilir. Bordro tablosunda
bulunan "Personel No" kullanılarak personel tablosundan personel ile ilgili
detaylara ulaşılabilir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
SAKLI YORDAMLAR (STORE PROCEDURE)
Veritabanı içerisinde belirli işlevlerin gerçekleştirilmesi için tanımlanan kodlara
saklı yordam (store procedure) adı verilir. Saklı yordam kendisine verilen
parametreler ve sorgu yapısı doğrultusunda belirli işleri gerçekleştirir ve eğer
varsa çıktı parametrelerini döndürür. Veritabanında saklı yordam kullanılması
veritabanı performansını arttırır ve yapılan işlemlerin çok daha hızlı
gerçekleşmesini sağlar. İşlemler sunucu üzerinde gerçekleştirdiği için veritabanı
güvenliği için de önemlidir.
İLİŞKİSEL VERİTABANI BİLEŞENLERİ
TETİKLEYİCİLER (TRIGGER)
Tetikleyiciler, veritabanı yönetim sistemlerinde bir tablo üzerinde ekleme, silme
ve güncelleme gibi işlemlerden biri gerçekleşmeden önce veya sonra çalışan ve
belirli işlemleri, kodlandığı şekilde yerine getiren yapılardır.
Örneğin; personel ücret tablosunda "Katsayı, Gün, Ücret" alanları olsun.
Oluşturduğumuz tetikleyiciye "Katsayı" ve "Gün" alanlarından herhangi birinde
ekleme ya da güncelleme işlemi gerçekleştirdiğinde "Ücret" alanına
"Katsayı*Gün" işleminin sonucunu yazdırabiliriz. Ya da bu sonucu istediğimiz
başka bir tabloya otomatik olarak kaydedebiliriz.
İlişkili tablolarda karşılaşılan en büyük sorun ana tablodaki bir değişikliğin ilişkili
tablolara yansımamasıdır. Tetikleyiciler yardımıyla bu sorunun önüne rahatlıkla
geçilebilir.
Download
Study collections