Microsoft ACCESS Veri Tabanı Emine Cabı Başkent Üniversitesi
Durum Çubuğu (Status Bar) Menü Çubuğu (Menü bar) Araç Çubuğu (Toolbar) Veritabanı penceresi Nesne Çubuğu Varolan nesneler Durum Çubuğu (Status Bar) Emine Cabı Başkent Üniversitesi
Tablolar (New) Yeni bir tablo yaratılmak için (Design view) Tabloyu baştan hazırlamak Emine Cabı Başkent Üniversitesi
Açıklama(Description): alan hakkında açıklayıcı bilgi yazılabilir. Alan adı(FieldName): Tabloya eklenmek istenen alan isimleri en fazla 64 karakter uzunluğunda olabilmektedir. Kısa ve veriyi temsil edecek nitelikte olması uygundur. Açıklama(Description): alan hakkında açıklayıcı bilgi yazılabilir. Veri Türleri (Data Type): Text (Metin): Rakam, harf veya işaretlerden oluşan 255 karakter genişliğinde alandır. Memo (Not): Metin alanı olmakla birlikte, 64 000 karakter alabilir. Date/Time (Tarih/Saat): Seçime göre tarih veya saat tutan alandır. Currency : Para birimlerine ayırılan alandır. Auto Number: Otomatik olarak doldurulan alandır. Yes/No: Mantıksal işlemler için kullanılır. Ole Object: Access tarafından bir başka nesnelere yer vermek için oluşturulmuştur. Hiperlink (Köprü): Internet sitelerinde bulunan sayfaların URL adresi tutabilecek alandır. Emine Cabı Başkent Üniversitesi
Alan Özellikleri Emine Cabı Başkent Üniversitesi
General Field Size (Alan Boyutu) Text (Metin) alan boyutu : 0 ile 255 karakter arasında olmalıdır. Number (Sayı) alan boyutu: Byte : 0’dan 255’e kadar tam sayı tutar. Integer : -32 768’den 32768’e kadar tamsayılar, Long Integer: -2 147 483 648’den 2 147 483 647’e kadar tamsayılar Single : -3.402823E38’den –1.401298E_45’e kadar negatif 1.401298E_45’den 3.402823E38’e kadar pozitif değer tutar. 7 basamaklı ondalık bölümü olabilir. Double: -1.79769313486231E308’den–4.9406564984124E_324’e 1.79769313486231E308’den 4.9406564984124E_324’e kadar pozitif değer tutar. 15 basamaklı ondalık bölümü olabilir. Emine Cabı Başkent Üniversitesi
@;”Bu bir metin” Bu bir metin Bu bir metin Format( Biçim): Verinin tabloda(raporlarda, formlarda) nasıl görüntüleneceğini belirler. Örnek(Text ve Memo alanları için biçimlendirme): Ayar Veri Görünüm @@@-@@@-@@-@@ 123456780 123-456-78-90 @;”Bu bir metin” Bu bir metin Bu bir metin > Küçük harfi büyük harfe çevirir. < Büyük harfi küçük harfe çevirir. Input Mask (Giriş Maskesi): Veritabanına verileri girerken girişi kolaylaştırmak için verileri belirli bir biçimde yazdırabiliriz. Giriş maskesi sihirbası bunun için kullanılabilir. Örn: 0-000-0000 000 00 Sıfır (0) Mutlaka girilmesi gereken rakamı göstermektedir. Bunun yerine 9 konulursa herhangi bir karakter girilmesi gerekir. Emine Cabı Başkent Üniversitesi
Validation Rule(Geçerlilik Kuralı): Veri girilmesi sırasında verilerin geçerliliği sınanabilir veri gireni uyarabilir. Örn: <>0 Girilen değer sıfırdan farklı olmalıdır. >100 Or Is Null Girilen değer ya boş olmalıdır veya 100’den büyük olmalıdır. Like ”B??????” Girilen değer 7 karakter uzunluğunda ve B harfi ile başlamalıdır. “Ankara” Or ”İstanbul” Girilen değer Ankara veya İstanbul olmalıdır. Validation Text (Geçerlilik Metni): Geçerlilik kuralına uyulmadığında buraya geçerlilik metni yazılabilir. Required (Gerekli) : Bir alan gerekli hale getirilirse veri tablosu doldurulurken Access bu alanın boş bırakılmasına izin vermez. Emine Cabı Başkent Üniversitesi
Allow Zero Lenght(Sıfır uzunluk izni): doldurulması gerekli alanların doğru doldurulmasını sağlamanın bir yolu da, alana girilecek değerin boyunun sıfır olaasını önlemektir. Indexed (Sıralı): Evet sıralamayı onaylar. Evet (Yineleme var) seçeneğinde bu değerin birden fazla olmasına imkan verir. Evet (Yineleme yok) seçeneğinde bu alandaki verinin tekrarlamasına izin vermez (Birincil anahtar). Unicode zip: Unicode uyumlu 65 536 karakteri destekler. Emine Cabı Başkent Üniversitesi
Lookup: Display Control : Text Box, List Box, Combo Box Row Source Type : Table/Query(arana Değerler tablo veya slorgudan alınacak ise), Value List(Sabit değerler aranacak ise), Field List(alan değerleri aranacak ise) Emine Cabı Başkent Üniversitesi
Row source: Satır kaynağı girilir veya seçilir. Örnek 1) Örnek 1) Display Control : Liste Kutusu Row Source Type : Value List Row source : “Ankara”; “İstanbul”; İzmir” (Alana ait veriler girileceği zaman liste kutusunda Ankara, İstanbul, İzmir seçenekleri ekrana gelir) Örnek 2) Display Control : Combo Box Row Source Type : Tablo/Query Row source : SELECT [aile].[Ailesirano] FROM aile; (Alana ait veriler girileceği zaman aile tablosundaki ailesirano içerisindeki veriler açılan kutu ile ekrana gelir) Emine Cabı Başkent Üniversitesi
Veri Girişi (Database Design) F2: İmleci alanın içerisine getirerek değişiklik yapılabilir. Ctrl+Space Bar : Bulunulan sütun seçilir. Satır\Sütun genişlikleri Excel’de olduğu gibi Format menüsünden veya kök sütun\satır hücrelerini seçerek yapılabilir. Emine Cabı Başkent Üniversitesi
Kayıtların Sıralanması Database Design bölümünde sıralama yaptırılacak sütünda iken Record\Sort komutundan yararlanılır. ascending : Küçükten büyüğe, Descending : Büyükten küçüğe sıralar. Apply Filter/Sort: Son duruma göre tabloyu yeniden sıralar. Remove Filter/Sort Kayıtları kayıt edilme sırasına göre ekrana getirir Emine Cabı Başkent Üniversitesi
Bazı Kayıtların seçilmesi (Filtre) Sıralama tüm kayıtlar için yapılıyordu. Filtre istenilen özelliğe uyan kayıtlar için yapılmaktadır. Records / Filter seçeneğinde 3 komut içeren menü karşımıza çıkar. Filter By Form (Form Süzgeci) : Ekrana gelen Sütun veya sütunlarda istenilen özellik seçilir. Filter By Selection (Seçime göre süz) : Seçim yapılan verilere uyan kayıtları ekrana getirir. Advanced Filter/Sort (Gelişmiş form süzgeci): Ekrana aşağıdaki gibi bir pencere açılır. Ad alanı Ascending, Şehir Adana olan kayıtların filtrelenmesi Emine Cabı Başkent Üniversitesi
Apply Filter/Sort: Son duruma göre tabloyu yeniden sıralar. Filtrelemede Apply Filter/Sort: Son duruma göre tabloyu yeniden sıralar. Remove Filter/Sort Kayıtları kayıt edilme sırasına göre ekrana getirir. Emine Cabı Başkent Üniversitesi
Yeni tablo ekleme (Insert/Table) Yeni tablo oluşturma Başka bir VT’ından tablo alma Başka VT’ından tablo bağlama Emine Cabı Başkent Üniversitesi
Tablolar arası ilişki kurmak (Relationships) Bilgileri bir tabloda tutmak hem pratik hem de mümkün olmayabilir. Bu nedenle yapılan işlemler ile ilgili bilgiler çoğu zaman bir tabloda birden fazla tabloda tutulur. Ancak ayrı tablolarda tutulan bu bilgilerden yararlanabilmek için tablolar arası bağlantı veya ilişki kurulması gerekmektedir. Tablolar veya veritabanı dosyaları arasında ilişkiye imkan tanıyan Access gibi veritabanı programlarına İlişkisel Veri Tabanı programı adı verilmektedir. Emine Cabı Başkent Üniversitesi
Tablolar arası ilişki kurmak Veri tabanında bulunan Cari hesaplar ve Cari işlemler tablosunu ele alalım. Her iki tabloda yer alan Hesap Kodu(birinci tabloda Primary olarak tanımlanmıştır.) adındaki alan üzerinden ilişki sağlanacaktır. Tools\Relationships komutu verilir. Bu ekranda Relationships\Show Table seçilir. Emine Cabı Başkent Üniversitesi
Tablolar arası ilişki kurmak Gelen tablo isimlerinden ilişki kurulacak tablolar seçilerek Add butonuna basılır. (Cari Hesaplar ve Cari İşlemler) Aralarında ilişki kurulmak istenen tablolarda aynı özelliğe sahip bir alanın olması gerekmektedir. (Örn: Hesap Kodu) Brincil tablodan ilişkiyi kurmada kullanılacak alan sürüklenerek İkincil tablodaki ilişki kurulacak alana bırakılır. 1-, 1-M(one-to-many) Bire çok ilişki Emine Cabı Başkent Üniversitesi
Tablolar arası ilişki kurmak Gelen ekrandan ilişki kurulacak alanlar değiştirilebilir.Kaydı olayan hesap kodu ile işlem yapılmasını engellemek için Enforse Referential Integrityonay kutusu seçilir. Cascade Update Related Fields : Birincil tablodaki hesap kodunda yapılan değişiklikler ikincil tablodaki hesap koduna yansır. Cascade Delete Related Records : Birincil tablodaki hesap kodu silindiği zaman ikincil tablodaki ilgili kayıtlar silinir. Bu işlemden sonra Cari hesaplar tablosunda Lookup özelliğini inceleyiniz... Emine Cabı Başkent Üniversitesi
Query-Sorgu Hazırlamak Daha önceki konularda, Access tablolarında yer alan kayıtlara indexlerin yardımı ile hızlı ve kolay bir şekilde ulaşılabiliyordu(Filter/Sort). Ancak bu şekilde kayıt arayıp bulmak, birçok işlem için yeterli olmaz. Kayıt seçme ve sıralama işlemine daha sonra gerek duyulabilir. Bu nedenlerden dolayı Query-Sorgu hazırlama ihtiyacı duyulmaktadır. Emine Cabı Başkent Üniversitesi
Bu işleme geçmeden önce öğrenci_kayıtları adı ile yeni bir veritabanı yaratalım. Veri tabanındaki oluşturulan tablolar ve özellikleri aşağıda verilmiştir. Öğrenci No: 10 karakter, Birincil anahtar, gerekli Adı: 20 Karakter, gerekli Soyadı: 20 karakter, gerekli, büyük harfli Bölüm Kodu: 40 karakter, gerekli, Değer listesi Fakültemizde bulunan bölümleri içermelidir. BÖTE, İNÖ, MTÖ, OÖÖ, SNÖ, TRÖ Baba Adı: 20 karakter Ana Adı: 20 karakter Doğum Yeri: 15 karakter, varsayılan Ankara Adres: 200 karakter Telefon: 11 karakter, biçim ve giriş maskesi var. Kayıt Tarihi: 4 karakter, sadece yıl Burs durumu: Evet/hayır Emine Cabı Başkent Üniversitesi
Aşağıdaki kayıtları Öğrenci özlük tablosuna girelim. Emine Cabı Başkent Üniversitesi
Query-Sorgu Hazırlamak 1. Adım 2. Adım 3. Adım 4. Adım Bölüm Kodu BÖTE olan öğrencileri sorgulayalım! Emine Cabı Başkent Üniversitesi
Ekle(Add) butonu ile tablolar sorguya dahil edilir. Bir veya daha fazla sorgudan da sorgu elde edilir. Her ikisi de kullanılabilir. Tablolar eklendikten sonra pencere kapatılır. Emine Cabı Başkent Üniversitesi
Öğrenci_Özlük tablosundan Öğrenci No, Adı, Soyadı, Bölüm Kodu alanları sorgunun içerisinde yer almaktadır. Her alanda bir veya birden fazla ölçüt belirlenebilir. Ölçüt (Criteria), Bölümü BÖTE Hazırlanan sorguya isim verilerek kaydedilir. Emine Cabı Başkent Üniversitesi
Belirtilen şartlara uygun sorgu tablosu aşağıda verilmektedir. Sorgulama sonunda bir veya birden fazla tablodan alınan kayıtlarla yeni bir tablo ortaya çıkar. Bağlı bulunduğu tabloya ait kayıtlar değişince sorgu kayıtları da değişir. Bundan dolayı sorgu sonucunda meydana gelen tablolara Kayıt Kümesi veya Dynaset adı verilir. Emine Cabı Başkent Üniversitesi
Sorgu tablosuna istediğiniz alanları getiriniz. Burslu olan öğrencileri Adı alanına göre sıralayarak veren ogrenci_burslu adında sorgu oluşturunuz. Sorgu tablosuna istediğiniz alanları getiriniz. Emine Cabı Başkent Üniversitesi
Birden Fazla Tablo için Sorgu Hazırlamak Ders Kodu: 7 karakter, büyük harf, gerekli Ders Adı: 50 karakter, gerekli, yineleme yok Kredisi: Sayı(Byte), ondalıksız Şube: 2 karakter, varsayılan 01 Öğretim elemanı: 30 karakter, varsayılan servis Emine Cabı Başkent Üniversitesi
Dersler Emine Cabı Başkent Üniversitesi
Öğrenci_ders Öğrenci No: 10 karakter, gerekli, Lookup(Arama) Öğrenci_Özlük tablosundan Öğrenci_no, Adı , Bölümü alanlarını alacak Ders Kodu : 7 karakter, Lookup(Arama) Dersler tablosundan Ders kodu alanı gelecek Yarırıl : 15 karakter, varsayılan 2002/2003-Bahar 1 Emine Cabı Başkent Üniversitesi
Kayıtlar 1 Emine Cabı Başkent Üniversitesi
Tablolar arası sorgulama Sorguya 3 tablo dahil edilmiştir. Tablolar arası ilişkiyi kurunuz. Yukarıdaki alanlar ekrana gelmektedir. Bölüm kodu BÖTÖ olanlar listelenecektir. Emine Cabı Başkent Üniversitesi
Sorgu sonucu Aşağıdaki sorgulamaları uygulayınız. Bölüm kodu İNÖ olan öğrencilerin aldıkları dersler, Ders Kodu ÖTÖ ile başlayan dersleri alan öğrenciler, 20011111 numaralı öğrencinin aldığı dersler. Emine Cabı Başkent Üniversitesi
Parametrik sorgular Önceki örnekte Bölüm Kodu BÖTE olanların sorgusu yapılmıştı. Diğer bölümler de düşünülürse bu şekilde sorgulama pratik olmayabilir. Bunun için en uygun sorgulama türü Parametrik sorgulardır. Parametrik sorgularda sorgulama yapılacak alan ya da alanların açıklamaları köşeli parantez içerinde yazılır. Sorgu sırasında kriter yazılır. Emine Cabı Başkent Üniversitesi
Kullanıcıyı yönlendirecek parametre açıklaması yazılır. Not: Between [Başlangıç tarihi] and [Bitiş tarihi] kriterini tartışınız. Emine Cabı Başkent Üniversitesi
Öğrenci numarası ve adına göre desrlerini veren sorgu oluşturunuz. Uygulama Öğrenci numarası ve adına göre desrlerini veren sorgu oluşturunuz. Girilen ders koduna göre sınıf listesini veren sorgu oluşturunuz. Emine Cabı Başkent Üniversitesi
Sorgularda sayısal içeriği tasnif etmek, toplamak View(Görünüm) menüsünden Totals(Toplamlar) seçilir. Liste kutusu açılarak istenilen işlemler yapılabilir. Öğrenciye ait derslerin kredisini toplar Emine Cabı Başkent Üniversitesi
Çapraz Sorgulama (Crostab Query) Yeni bir sorgu sayfası açalım. Query / Crosstab seçelim Yandaki çekilde satır ve sütün başlıklarını, değeri belirleyelim Sonuç: Bölümlere göre görülen numaradaki öğrencilerin toplam kredileri Emine Cabı Başkent Üniversitesi
Tablo oluşturma sorguları Accessde sorgulardan yararlanarak yeni tablolar hazırlama imkanı bulunmaktadır. Yeni sorgu oluşturalım. Tablo ekleyelim. Alanları ve kriteri belirledikten sonra Query/Make Table seçelim. Tablo adı verelim. Query /Run seçimi ile tablo görüntüsü ekrana gelmektedir. Emine Cabı Başkent Üniversitesi
Ayrıca Sorgu ekranında bulunan Query/Delete: Belirtilen koşula göre birden fazla kayıtı siler. Query/Append: Yapıları aynı olan bir tablodan başka bir tabloya kayıt yapılır. Emine Cabı Başkent Üniversitesi
Uygulama örnekleri Emine Cabı Başkent Üniversitesi
Öğrenci_özlük tablosuna form hazırlayalım. Form Hazırlamak 3. Adım 4. Adım 2. Adım 1. Adım Öğrenci_özlük tablosuna form hazırlayalım. Emine Cabı Başkent Üniversitesi
Formalara düğme ekleme Adım Command buton seçilir. 3. Adım Görev tanımlaması yapılır. 2. Adım Ekrandaki yeri belirlenir 4. Adım İşlem devam eder. Emine Cabı Başkent Üniversitesi
Form sayfasını aşağıdaki gibi oluşturunuz. Emine Cabı Başkent Üniversitesi
Yapılan İşlemler Form boyutu ekrana göre büyüldüldü. Görünüm-Alt bilgi\Üst bilgi (View-Form Header\Fooder)’ den üst bilgiye araç çubuklarından label kullanılarak başlık yazıldı. Alanlar forma aktarılarak düzenleme yapıldı. Bölüm kodu sağ tıklama Değiştir (Change to) ile Combo box durumuna getirildi. Yine burs durumu onay kutusu (Check box) durumuna getirildi. Araç çubuğu (Toolbox) yardımı ile command butonları oluşturuldu (Form kapat, önceki kayıt, sonraki kayıt...). Emine Cabı Başkent Üniversitesi
Ana\Alt Form Hazırlamak Aynı pencerede birbirleri ile ilişkili olan iki tabloya ait iki formun olması çok daha işlevsel olabilmektedir. Bunun için ana ve alt form hazırlanmaktadır. Emine Cabı Başkent Üniversitesi
Örnek: 1.. Alt form hazırlama: Öğrenci_ders tablosunun formunu Autoform: Tabular olarak hazırlayınız ve öğrenci_ders_alt olarak kayıt ediniz. 2.. Ana form hazırlama: Dersler tablosuna, form sihirbazı yardımı ile bir form hazırlayınız. 3.. İki formu birleştirme: Dersler tablosunun form design ortamında iken; Toolbox penceresinden SubForm’u seçiniz(Toolbox’da Autowizard seçili olmalıdır). Alt formun yerini ekranda belirleyiniz. Gelen ekranda Form seçeneğini işaretledikten sonra öğrenci_ders_alt formunu seçiniz. Gelen ekranlarda farklı işlem yapmayacaksanız next ile geçiniz. Emine Cabı Başkent Üniversitesi
Ana form ve alt form tasarım görünümü Sub form hazırlama işleminde gelen pencerelerden bir tanesinin görünümü Ana form ve alt form tasarım görünümü Emine Cabı Başkent Üniversitesi
Form Görünümü Emine Cabı Başkent Üniversitesi
Şimdi hazırladığımız formları aşağıdaki şekilde giriş formu oluşturarak bu forma bağlayalım. Emine Cabı Başkent Üniversitesi
Rapor Hazırlamak Form aracılığı ile tablolara veri girişi yapıldıktan sonra, ekran çıktısı veya yazıcı çıktısı almak amacı ile rapor hazırlanmaktadır. Emine Cabı Başkent Üniversitesi
Öğrenci_özlük tablosuna rapor hazırlayalım. Rapor Hazırlamak 2. Adım 3. Adım 1. Adım Öğrenci_özlük tablosuna rapor hazırlayalım. Emine Cabı Başkent Üniversitesi
Rapor Hazırlamak * Sayfa üst bilgisine araç çubuklarından etiket bilgilerini yazalım. * Fields List’den istenilen alanları ayrıntılara yerleştirelim * Altbilgi yazılabilir. Emine Cabı Başkent Üniversitesi
Rapor Baskı Önizleme Görünümü Emine Cabı Başkent Üniversitesi
Makro Hazırlamak 2. Adım 3. Adım 1. Adım Makroda, Öğrenci_özlük tablosuna erişim için ileti kutusu ve tablo aç öğeleri yer almaktadır. Emine Cabı Başkent Üniversitesi