Veritabanı
(database) bir sorunu çözmek amacıyla bir araya getirilmiş, birbirleriyle
ilişkili verilerin bir topluluğudur. Veri tabanı, belirli bir tarzda organize
edilmiş faydalı verilerin bir koleksiyonudur. Bu verilerin bir araya getirilmesi
ve bunların işlenerek anlaşılır bilgi haline dönüştürülmesi bilgi-işlem
açısından çok önemlidir.
Çok
sayıda bilginin, güvenilir bir şekilde saklanması ve üzerlerinde çeşitli
işlemlerin yapılması gerektiğinde, bu bilgileri oluşturan verilerin anlamlı
biçimde düzenlenmeleri gerekmektedir. İyi düzenlenmiş bir veri tabanı ile
birçok işlev yerine getirilebilir.
Günümüzde,
değişik konulara ilişkin birçok veritabanı oluşturulmuştur. Hastane yönetim
sistemine ilişkin veri tabanı örnek olarak verilebilir. Bu veritabanında;
·
Hasta kayıtları
·
Personel kayıtları
·
Malzeme kayıtları
·
Muhasebe kayıtları
·
Bilimsel çalışmalar
·
Büro işlemleri
gibi veriler tutulmaktadır. Bu
veriler arasında çeşitli ilişkiler kurularak, bir verinin tekrar veritabanına
girmesi önlenmiş, ayrıca veritabanı üzerinde güncelleştirme işlemleri yapılarak
veritabanının aktif bir şekilde kullanılması sağlanmıştır.
ÖRNEK: Bir kişisel
telefon rehberi bir veritabanı olarak görülebilir.
|
Ad Soyad |
Şehir Kodu |
Telefon No |
|
Mehmet Türkmen |
322 |
2384153 |
|
Uğur Yüksel |
216 |
2761651 |
|
Erhan Seçilen |
212 |
4327862 |
|
İbrahim Sağlam |
318 |
6115240 |
|
Ramazan Tekinarslan |
322 |
7145678 |
|
Veli Korkmaz |
322 |
4567890 |
|
Ayhan Akgöz |
212 |
1234567 |
Bu telefon rehberi, rasgele
düzenlenmiş isimleri ve telefon numaralarını gösterir bir listedir. Bununla
beraber, bu liste istenilen tercihe veya forma göre belirli bir sırada organize
edilebilir. Örneğin, liste ada veya soyada göre alfabetik sırada, telefon
numarasına göre artan bir şekilde sıralanabilir, şehir kodları kendi içinde
gruplanabilir. Karışık bir telefon
rehberinin, hiçbir yararı olmayacağından bizim için önemli olan, bilgilerin
istediğimiz düzende olmasıdır.
![]()
Sql
(Structured Query Language)
Sql,
veritabanı sorgu dilidir. Sql ile veritabanına yeni tablolar, yeni kayıtlar
ekleyip silebilir, var olan alanlar üzerinde düzenlemeler ve sorgular yapabilirsiniz.
Sql, Standard bir veritabanı sorgu dilidir. Bütün gelişmiş veritabanı
uygulamalarında kullanılır. Sql ile Oracle, Db2, Sybase, Informix, Microsoft
Sql Server, Access gibi veritabanı yönetim sistemlerinde çalışabilirsiniz. Sql
komutları çeşitli başlıklar altında düzenlenebilir.
Genelde
sql komutları ikiye ayrılır:
Ddl:veri tanımlama komutları.
Dml:veri işleme komutları.
DDL
komutları DDL (Data Definition Language)
Tablo
oluşturma, tablo silme, tabloya yeni alanlar ekleme v.b. işleri yapan
komutlardır. Bunlar;
Create table
Create ındex
Drop table
Alter table
DML komutları
Tablolardaki alanlar üzerinde işlem yapan
komutlardır. Bunlar;
Select
Insert
Update
Delete
Yardımcı deyimler
Bu deyimler tek başlarına kullanılamazlar.
Komutların işlevlerini yerine getirmeleri için bazı
yardımcı deyimler vardır. Bunlar;
From
Where
Group by
Havıng
Order by
![]()
MS ACCESS
VERİTABANI
Microsoft
Office Paketinin bir parçası olan Microsoft Access'i kullanarak bilgilerinizin
tümünü tek bir veritabanı dosyasından yönetebilirsiniz. Dosya içinde şunları
kullanabilirsiniz:
Verileri tabloya bir kez depolayıp sonra da
çeşitli konumlardan görüntüleme. Verileri güncelleştirdiğinizde, görüntülendiği
her yerde otomatik olarak güncelleştirilir.
1)
Verileri
tabloya bir kez depolayıp sonra da çeşitli konumlardan görüntüleme. Verileri
güncelleştirdiğinizde, görüntülendiği her yerde otomatik olarak
güncelleştirilir.
2)
Verileri
sorgu içinde görüntüleme
3)
Verileri
form içinde görüntüleme
4)
Verileri
rapor içinde görüntüleme
5)
Verileri
erişim sayfası içinde görüntüleme
![]()
Tablolar
ve ilişkiler
Verilerinizi saklamak üzere, izlediğiniz her bilgi
türü için bir tablo oluşturun. Birden çok tablodan gelen verileri bir sorgu,
form, rapor veya veri erişim sayfasında bir araya getirmek için, tablolar
arasında ilişkiler tanımlayın
1)
Daha
önce bir adres listesinde bulunan veriler artık Müşteriler tablosunda yer
almaktadır.
2)
Daha
önce bir elektronik tabloda bulunan
sipariş bilgileri artık Siparişler tablosunda yer almaktadır.
3)
Benzersiz
Kimlik (örneğin Müşteri Kimliği) tablodaki bir kaydı diğerlerinden ayırt
etmenizi sağlar. Microsoft Access, tablonun benzersiz Kimlik alanını başka bir
tabloya ekleyerek ve bir ilişki tanımlayarak, her iki tabloda ilgili kayıtları
eşleştirebilir; böylece bunları bir form, rapor veya sorguda bir araya
getirebilirsiniz.
![]()
Veritabanındaki ilişkiler
Microsoft Access
veritabanınızda her nesne için farklı tabloları ayarladıktan sonra, veritabanına
bilgiyi yeniden nasıl bir araya getireceğini belirtmeniz gerekir. Bu işlem için
ilk adım, tablolarınızın arasındaki ilişkileri tanımlamaktır. Bunu yaptıktan
sonra, bir defada pek çok tablodan bilgi görüntüleyecek sorguları, formları ve
raporları oluşturabilirsiniz. Örneğin, bir form dört tablodan alınan bilgileri
içeriyor olsun:
1)
Müşteriler
tablosu
2)
Siparişler
tablosu
3)
Ürünler
tablosu
4)
Sipariş
Ayrıntıları tablosu
İlişkiler nasıl çalışır?
Bu örnekte, aynı sipariş
hakkındaki bilgiyi göstermek için bu dört tablonun alanları koordine
edilmelidir. Bu koordinasyon, tablolar arasındaki ilişkiler sayesinde yapılır.
İlişki, genellikle her iki tablonun aynı adlı alanlar olan anahtar
alanlardaki veriler eşleştirilerek çalışır. Çoğu durumlarda, bu eşleştirme
alanları, bir tablodan her kayıt için benzersiz bir tanımlayıcı sunan birincil
anahtar ve diğer tablodaki yabancı anahtardır. Örneğin, ÇalışanNo alanları
arasında bir ilişki oluşturarak, çalışanlar sorumlu oldukları siparişlerle
ilişkilendirilebilir.

1)
ÇalışanNo
her iki tabloda da görünür, birincil anahtar...
2)
...
Ve yabancı anahtar olarak.
Bir-çok ilişkisi
Bir-çok ilişkisi en yaygın
ilişki türüdür. Bir-çok ilişkisinde, A Tablosundaki kayıt, B Tablosundaki
kayıtta pek çok eşleşen kayda sahiptir, ancak B Tablosundaki kayıt, A
Tablosunda yalnızca bir eşleşen kayda sahiptir.

1)
Bir
sağlayıcı ...
2)
...
birden çok ürün sağlayabilir ...
3)
...
ancak her ürünün yalnızca bir tedarikçisi vardır.
Çok-çok ilişkisi
Çok-çok ilişkisinde, A
Tablosundaki bir kayıt, B Tablosunda bulunan pek çok kayıtla eşleşebilir ve B
Tablosundaki bir kayıt A Tablosunda bulunan pek çok kayıtla eşleşebilir. Bu tür
bir ilişki, birincil anahtarın iki alanı içerdiği birleşme tablosu olarak
adlandırılan üçüncü bir tablonun tanımlanması koşuluyla mümkündür, A ve B
Tablolarından gelen yabancı anahtarlar. Örneğin, Siparişler tablosu ve Ürünler
tablosu iki tane bire çok olarak tanımlanan ilişkiyi Sipariş Detayları
tablosunda oluşturarak, çok-çok ilişkilere sahip olur. Bir siparişin birçok
ürünü olabilir ve her ürün pek çok siparişte görünebilir.

1)
Siparişler
tablosundaki birincil anahtar
2)
Ürünler
tablosundaki birincil anahtar
3)
Bir
siparişte birçok ürün bulunabilir ...
4)
...
ve her ürün birçok siparişte görünebilir.
Bire bir ilişki
Bire bir ilişkide, A
Tablosundaki her kayıt, B Tablosunda yalnızca bir eşleştirme kaydına ve B
Tablosundaki her kayıt, A Tablosundaki yalnızca bir eşleştirme kaydına sahip
olabilir. Bu yolla ilgili olan pek çok bilgi bir tabloda bulunduğundan bu tür
bir ilişki pek olağan değil. Bir tabloyu pek çok alana bölmek, güvenlik
sebeplerinden dolayı tablonun bir kısmını ayırmak veya ana tablonun yalnızca
altkümesine uygulanan bilgileri saklamak için, bire bir ilişkiyi
kullanabilirsiniz. Örneğin, fon yükselten futbol oyununda yer alan çalışanları
izlemek için bir tablo oluşturmak isteyebilirsiniz. Futbol Oyuncuları tablosundaki
her bir futbol oyuncusunun Çalışanlar tablosunda bir eşleşen kaydı vardır.

1)
Çalışanlar
tablosunda her futbolcuyla eşleşen bir kayıt vardır.
2)
Bu
değer kümesi, ÇalışanNo alanının ve Çalışanlar tablosunun bir alt kümesidir.
İlişkileri
tanımlama hakkında
Microsoft Access'in
oluşturduğu ilişki türü, ilgili alanların nasıl tanımlandığına bağlıdır:
· Yalnızca ilgili alanlardan
biri birincil anahtar ise veya benzersiz dizine sahipse, bir-çok ilişki
oluşturulur.
· Her iki ilgili alan birinci
anahtar ise veya benzersiz dizinlere sahipse, bire bir ilişki oluşturulur.
· Çok-çok ilişki ise
gerçekten de ilk anahtarının iki alanı içerdiği üçüncü bir tabloyla diğer iki
tablodan gelen yabancı anahtarlar birlikte olan iki tane bir-çok ilişkidir.
Tablo ve kendisi arasında
da bir ilişki oluşturabilirsiniz. Aynı tablo içinde Aramaya gereksinim
duyduğunuz durumlarda bu faydalıdır. Çalışanlar tablosunda, örneğin, ÇalışanNo
ve Raporlar alanları arasında bir ilişki tanımlayabilirsiniz, böylece Raporlar
alanı eşleşen ÇalışanNo'dan çalışan verilerini görüntüleyebilir.
Not Birinci anahtar
olmayan ve benzersiz dizine sahip olmayan bir alanı, birinci anahtar olmayan ve
benzersiz dizine sahip olmayan bir başka alana sürüklerseniz, belirsiz bir
ilişki oluşturulur. Belirsiz ilişkilere sahip tabloları içeren sorgularda,
Microsoft Access, tablolar arasında varsayılan birleştirme satırını görüntüler, ancak bilgi tutarlılığına
zorlanmaz ve bu tabloların kayıtlarının benzersizliği konusunda bir garanti
yoktur.
Başvuru
tutarlılığı
Bilgi tutarlılığı,
Microsoft Access'in kayıtlar ve ilgili tabloları arasındaki ilişkilerin geçerli
olduğunu sağlamak için ve ilgili verileri yanlışlıkla silmemeniz veya
değiştirmemeniz için kullandığı kurallar sistemidir. Aşağıdaki koşulların tümü
karşılandığında bilgi tutarlılığını ayarlayabilirsiniz:
· Birinci tablodaki eşleşen
alan, birincil anahtar veya benzersiz dizine sahip.
· İlgili alanlar aynı veri
türüne sahiptir. İki olağandışı durum vardır. Otomatik Sayı alanı Uzun
Tamsayı ayarı FieldSize özelliği olan Sayı alanı ile ilgili olabilir
ve Yineleme Kimliği ayarı FieldSize özelliği olan bir Otomatik
Sayı alanı da Yineleme Kimliği ayarı FieldSize özelliği olan bir
Sayı alanı ile ilgili olabilir.
· Her iki tablo da aynı
Microsoft Access veritabanına aittir. Tablolar ilişkili tablolar ise, bunlar
Microsoft Access biçiminde tablolar olmalı ve bilgi tutarlılığını ayarlamak
için saklandıkları veritabanını açmalısınız. Bilgi tutarlılığı, diğer
biçimlerdeki veritabanlarından ilişkili tablolar için zorlanamaz.
Aşağıdaki kurallar başvuru
tutarlılığı kullanıldığında uygulanır:
· Birincil tablonun birincil
anahtarında bulunmayan ilgili tablonun yabancı anahtar alanına bir değer
giremezsiniz. Ancak, yabancı anahtara, kayıtların ilgisiz olduğunu belirten bir
Boş değer girebilirsiniz. Örneğin, varolmayan bir müşteriye atanmış bir
siparişiniz olamaz, ancak Müşteri Kimliği alanına Boş değer girerek hiç
kimseye atanmış bir siparişiniz olabilir.
· İlgili tabloda eşleşen
kayıtlar varsa, birincil tablodan kayıt silemezsiniz. Örneğin, Siparişler
tablosunda çalışan için atanmış siparişler varsa, Çalışanlar tablosundan bir
çalışanın kaydını silemezsiniz.
· Kaydın ilgili kayıtları
varsa, birincil tabloda birincil anahtar değerini değiştiremezsiniz. Örneğin,
Siparişler tablosunda o çalışan için atanmış siparişler varsa, Çalışanlar
tablosunda çalışanın kimliğini değiştiremezsiniz.
Güncelleştirmeleri ve silmeleri basamaklandırma
Bilgi tutarlılığının
zorlandığı ilişkiler için, Microsoft Access'in otomatik olarak ilgili kayıtları
basamaklı güncelleştir ve basamaklı sil özelliklerini isteyip
istemediğinizi belirleyebilirsiniz. Bu seçenekleri ayarlarsanız, normalde bilgi
tutarlılığı kuralları tarafından önlenen silme ve güncelleştirme işlemlerine
izin verilir. Kayıtları sildiğinizde veya birincil tablodaki birincil tuş
değerlerini değiştirdiğinizde, Microsoft Access bilgi tutarlılığını korumak
için ilgili tablolarda gerekli değişiklikleri yapar.
İlişki tanımlarken, İlişkili
Alanları Basamaklı Güncelleştir onay kutusunu işaretlerseniz, birincil
tablodaki bir kaydın birinci tuşunu her değiştirdiğinizde, Microsoft Access
birincil tuşu ilgili tablolarda yeni değerde otomatik olarak güncelleştirir.
Örneğin, Müşteriler tablosunda bir müşterinin Kimliğini değiştirirseniz,
Siparişler tablosundaki Müşteri Kimliği alanı, o müşterinin her siparişi için
otomatik olarak güncelleştirilir, böylece ilişki kopmamış olur. Microsoft
Access herhangi bir ileti görüntülemeden basamaklı olarak güncelleştirilir.
Not Birincil
tablodaki birincil anahtar Otomatik Sayı alanı ise, Otomatik Sayı alanındaki
değeri değiştiremediğinizden İlişkili Alanları Ardarda Güncelleştir onay
kutusunu ayarlamanın hiçbir etkisi olmayacaktır.
İlişkiyi tanımlarken İlişkili
Alanları Ardarda Güncelleştir onay kutusunu işaretlerseniz, birincil
tablodaki kayıtları her sildiğinizde, Microsoft Access ilgili tablodaki ilgili
kayıtları otomatik olarak siler. Örneğin, Müşteriler tablosundan bir müşteri
kaydını silerseniz, Siparişler tablosundaki müşterinin tüm siparişleri otomatik
olarak silinir (bu, Siparişler kayıtlarıyla ilgili Sipariş Ayrıntıları
tablosundaki kayıtları da içerir). İlişkili Alanları Ardarda Güncelleştir
onay kutusu işaretliyken form veya veri sayfasından kayıtlar sildiğinizde,
Microsoft Access, ilgili kayıtların da silinebileceği konusunda sizi uyarır.
Ancak, sil sorgusunu kullanarak
kayıtları sildiğinizde, Microsoft Access ilgili tablodaki kayıtları uyarı
görüntülemeden siler.
Sorgular
Birden çok tablodan gelen veriler de içinde olmak
üzere, yalnızca tam olarak belirlediğiniz koşulları karşılayan verileri bulmak
ve almak için bir sorgu oluşturun. Bir sorgu bunun yanı sıra, birden çok kaydı
aynı anda güncelleştirebilir veya silebilir ve verileriniz üzerinde önceden
tanımlanmış veya özel hesaplamalar yapabilir.
1)
Bu
sorgu, siparişleri Nisan ayında karşılanması gereken Ankara'daki müşteriler
için Sipariş No, Sevk Tarihi, Şirket Adı ve Şehir bilgilerini almak üzere ayrı
tablolara erişir.
Formlar
Tablodaki verileri kolayca
görüntülemek, veri girmek ve değiştirmek için bir form oluşturun. Formu
açtığınızda, Microsoft Access bir veya birden çok tablodan gelen verileri alır
ve bunları ekranda Form Sihirbazı'nda seçtiğiniz veya Tasarım görünümünde (Tasarım görünümü: Şu veritabanı nesnelerinin
tasarımını gösteren bir pencere: tablolar, sorgular, formlar, raporlar,
makrolar ve veri erişim sayfaları. Tasarım görünümünde yeni veritabanı
nesneleri oluşturabilir veya varolanların tasarımını değiştirebilirsiniz.)
kendi oluşturduğunuz düzende görüntüler.

1)
Tablo
aynı anda birçok kaydı görüntüler, ancak verilerin tümünü tek bir kayıt içinde
görmek için kaydırmanız gerekebilir. Ayrıca, bir tabloyu görüntülerken
aynı anda birden fazla tablodaki verileri güncelleştiremezsiniz.
2)
Form
bir seferde tek bir kayıt üzerinde odaklanır ve birden çok tablonun alanlarını
görüntüleyebilir. Ayrıca, resimleri ve diğer nesneleri de görüntüleyebilir.
3)
Form
verileri yazdıran, başka nesneleri açan veya görevleri diğer şekillerde
otomatikleştiren bir düğme içerebilir
Raporlar
Verilerinizi çözümlemek veya onları kağıt üzerinde
belirli bir yolla sunmak üzere bir rapor oluşturun. Örneğin, verileri
gruplandıran ve toplamları hesaplayan bir rapor ve farklı verilerin postalama
etiketlerini yazdırmak üzere biçimlendirilmiş olduğu başka bir rapor
yazdırabilirsiniz.

1)
Posta
etiketleri oluşturmak için bir rapor kullanın.
2)
Bir
grafikte toplamları göstermek için bir rapor kullanın.
3)
Toplamları
hesaplamak için bir rapor kullanın.
Örnek
Bir Veritabanı oluşturulması:
MSAccess programı açıldıktan sonra boş bir veritabanı
açılır. Örnek olarak alış-veriş veritabanı yapacağız.
1) Tasarım görünümde tablo
oluştur
a)Tablo adı: Müsteri
|
Alan adı |
veri türü |
|
Müşteriadi |
Metin
(1.Key) |
|
Telefonno |
Metin |
|
Adres |
Metin |
|
Fax |
Metin |
b) İkinci tablo: Üretici
|
Alan Adı |
Veri Türü |
|
ÜreticiAdı |
Metin (1.Key) |
|
ÜreticiAdres |
Metin |
|
ÜreticiTel |
Metin |
c) Üçüncü tablo: Ürün
|
Alan Adı |
Veri Türü |
|
ÜrünID |
OtomatikSayı (1.Key) |
|
ÜrünAdı |
Metin |
|
ÜreticiAdı |
Metin |
|
StoktakiÜrün |
sayı |
|
BirimFiyatı |
ParaBirimi |
d) Dördüncü Tablo: hareket
|
Alan adı |
veri türü |
|
HareketID |
otomatik
sayı (1. Key) |
|
Müsteriadi |
metin |
|
TaşımaÜcreti |
ParaBirimi |
|
TeslimTarihi |
Tarih/Saat |
|
TeslimAdresi |
Metin |
e) Beşinci Tablo: Hareket
Özellikleri
|
Alan adı |
veri türü |
|
HareketID |
sayı
(1. Key) |
|
ÜrünID |