2.1.2. Veritabanı Tasarımı
Access 2000’i tanıdık diye hemen veri tabloları oluşturmak ve onlarla sihirbazlık yapmak için henüz erken. Önce veritabanı planlama konusundan söz etmemiz gerekiyor. Dikkatlice planlanmamış bir veritabanı kullanıcıya yarardan çok zarar getirir.
Veri planlama, daha sonra verinin nerede ve nasıl kullanılacağına dayanır. İmkansız olmamakla birlikte çok az veritabanı ilk amacının dışında kullanılabilecek hale getirilebilir. İyi bir planlama ise önce veritabanı terimlerine aşina olmayı gerektirir. Şimdi kısaca bu terimleri ele alalım.
Access 2000 ile kaydedeceğiniz ve kullanacağınız bilgilere veri denir. Access açısından veriler, ait oldukları alanın türünde sayılır. Bir alan sayı içeriyorsa, “123456789” sayıdır. Bir alan metin içeriyorsa “123456789” metindir. Access 2000’de verileriniz şu türlerden birine girmek zorundadır:
Metin: Rakam, harf veya işaretlerden oluşan ve 255 karakter genişliğinde bir alandır. Metin olarak tayin edilmiş bir alana yazılan rakamlar, sayı işlemi görmez; yani aritmetik işleme konu olamaz. Metin alanları, belirlediğiniz (nasıl belirleyeceğimize sonra geleceğiz) genişliğin üstünde karakter tutamazlar. Söz gelimi bir metin alanını 8 karakter boyutunda oluşturduysanız, bunun içine “Mustafa Durcan” yazamazsınız. İyi bir veritabanı tasarımı, daima gerektiğinden biraz fazla geniş boyut tayinini gerektirir.
Not: Metin alanı olmakla birlikte, 64 bin karakter alabilir.
Sayı: Her türlü aritmetik işleme konu olabilecek sayıları tutar.
Tarih/Saat: Belirlemenize göre, tarih veya saat veya her ikisini birden tutabilen özel bir alandır.
Para Birimi: Türk lirası, Dolar, Alman Markı, Japon Yeni ve dünyada bulunabilecek hemen hemen bütün para birimlerine tayin edilebilecek özel bir alandır. Para birimi verilerinizi gireceğiniz alanın Currency olması, Access 2000’in bu verilerle para biriminin gerektirdiği biçimde hesap yapmasını sağlar.
Otomatik Sayı: Access 2000 tarafından artan şekilde otomatik olarak doldurulan bir alandır. Bir veritabanında her bir kaydın (satırın) diğerlerinden mutlaka ayırıcı bir niteliği olması gerekir. Her şeyiyle aynı iki kayıt, otomatik sayı alanının farklılığı sayesinde birbirinden ayrılabilir.
Evet/Hayır: İçindeki değer Evet veya Hayır ya da Doğru veya Yanlış olabilen, mantıksal işlemlerde kullanılan bir alandır.
OLE Nesnesi: Access 2000’in veritabanında bir başka program tarafından oluşturulmuş nesnelere yer vermenizi sağlayan alan türüdür.
Köprü: Internet sitelerinde bulunan sayfaların adresi (URL), Access 2000 tarafından bağlantı sağlanacak biçimde tutulabilir.
Arama Sihirbazı: Bir alana doğrudan vergi girmek yerine, Access’in Arama Sihirbazı yardımıyla bu veriyi bir tablodan veya sorgu sonucundan seçmesini sağlayabilirsiniz.
Sık kullanacağınız bazı bilgilerin alan türleri şöyle olmalıdır:
Ad, soyad: Metin
Adres: Metin
Kapı, apartman daire no: Metin
Telefon no: Metin
Elektronik adres: Metin
Aylık gelir, fiyatı, tutarı: Para birimi
Yaş: Sayı
Personel sayısı: Sayı
Web Sitesi : Bağlantı
Veritabanındaki bir birim bilgi kümesine kayıt denir. Örneğin okuldaki derslerinizde sınavlarda, ödevlerde aldığınız notları tutan bir veritabanı tasarlıyorsanız, her bir ders bir kayıt olabilir. Buna karşılık bir öğretmenin sınıfındaki öğrenciler için tuttuğu veritabanında, her bir öğrenci bir kayıt olabilir. Access ile kendinize bir adres defteri yapıyorsanız, her kişi veya firma bir kayıttır. Veri alanlarınızı belirlerken, bazı alanları “boş olabilir” şeklinde tanımlamışsanız, telefon defterinizdeki her kaydın her alanı dolu olmayabilir; örneğin bazı kişilerin faks numarası veya elektronik posta adresi olmayabilir. Buna karşılık veri alanlarını belirlerken bazı alanlara boş olma yasağı getirmişseniz, tablolarınızı doldururken Access 2000 bu alana mutlaka alanın niteliğine uygun bir değer girmenizi şart koşacaktır.
Tablo, (boş veya dolu) aynı alanlara sahip kayıtlar kümesidir. Notlarınızı tuttuğunuz dosyada 1999-2000 ders yılı notlarınız bir tablo oluşturabilir. Bir öğretmen için Lise 3 Türk Edebiyatı sınıfındaki öğrenciler bir tabloda toplanabilir. Fakat öğretmen isterse kız ve erkek öğrencileri aynı tablolara da alabilir. Daha sonra değineceğiz, bir veritabanında aynı kişiye, aynı sınıfa, yani aynı birime ait kayıtların tümü tek tabloda bulunmayabilir. Bu sebeple, tablo dendiği zaman, sadece birbirine benzeyen verileri olan kayıt kümesi aklımıza gelmelidir. Burada birbirine benzeyen tanımına dikkat edin: Diyelim ki elimizde üç kişilik bir bilgi kümesi var. Bu üç kişiye ait bilgileri, adı, soyadı ve cinsiyeti diye üç alanda toplamaya karar verdik. Bu üç kişinin de bu üç haneye yazılacak bilgisi benzer bilgilerdir. Bilgilerin içerikli çok farklı olabilir; birinin adı Mustafa, diğerinin Osman, üçüncüsünün ise Vildan olabilir. İlk ikisi için tablomuza “erkek,” üçüncüsü için “kadın” yazmamız gerekebilir. Fakat bu üç kişi bir arada, bir tablo oluşturabilir.
Çeşitli tablolardan oluşan ve bir Access 2000 dosyayı halinde toplanan bilgi kümesine veritabanı deriz. Bir veritabanının içinde birden fazla tablo bulunabilir. Bu tablolar birbiri ilişkilendirilmiş olabilir; ilişkilendirilmemiş olabilir. Bir veritabanında tablolar birbiri ile ilişkilendirilmemiş ise buna düz veritabanı, tablolar ilişkilendirilmiş ise (doğru bildiniz!) ilişkilendirilmiş veritabanı denir. Eğer veritabanı tasarımının bir tek püf noktası varsa, o da ilişkilendirilmiş tablo meselesini kavramaktır.
Düz Veritabanı: Bir tablonun bütün alanlarına dair bütün bilgiler kendi içinde ise bu tabloya düz tablo, bu dosyaya düz dosya ve bu veritabanına da düz veritabanı denir. Diyelim ki elimizde, “Adı,” “Adresi” ve “Telefon numarası” alanlarını içeren bir tablo var. Ve diyelim ki Mustafa’nın 1, Osman’ın 2, Vildan’ın da 3 telefonu var. Bu durumda Mustafa listemize bir kere, Osman iki kere, Vildan ise üç kere yazılacak demektir. Düz tablolarda tekrarlar olur.
İlişkilendirilmiş Veritabanı: Düz tablolardaki tekrarı önlemek ve böylece veritabanının daha az yer tutmasını dolayısıyla sorguların daha hızlı icra edilmesini sağlamak amacıyla, tabloları ilişkilendiririz. Yukarıdaki örneğe dönersek, Osman’ın adını ve adresini iki, Vildan’ın adını ve adresini üç kere göstermek yerine, bütün kişileri bir tabloda adları ve adresleri ile toplar, bir diğer tabloya ise telefon numaralarını yazan ve her bir numarayı kişiler tablosunda bir kayıtla ilişkilendirirsek, her ikisini de veritabanımız dosya olarak çok daha az yer tutar.
Bunu “Anahtar alan” veya “Birincil anahtar” (Primary key) adını verdiğimiz teknikle sağlarız. Her tabloda her bir kaydı diğerlerinden benzersiz hale getiren, yani diğer hiç bir satırda aynısı bulunmayan bir alan olmalıdır. Bu nitelikteki bir alanı Birincil Anahtar olarak tayin edebiliriz. İlişkilendirilmiş bir veritabanında, her bir kayıt, bir alanından diğer bir tabloya bağlanır. Bu bağlamanın kayıtların benzersiz alanlarından yapılması yanlış bağları önleyecektir. Yine yukarıdaki örneğe dönelim. Mustafa’ya 1, Osman’a 2 ve Vildan’a 3 numaralı kişi diyelim; Elimizdeki bütün telefon numaralarını alt alta yazar (telefon numaralarını kayıt yani satır olarak düşünün) ve karşılarına ait oldukları kişinin numarasını yazarsak, her bir telefonun kime ait olduğunu kolayca buluruz. “Kolayca” tabiî sözün gelişi; fakat bu durumda veri tabanı dosyamız çok daha az yer tutar.
Meraklısı için not: Tablolarınız Normal Mi?
İlişkilendirilmiş veritabanı dosyası daha az yer tutmakla birlikte, veritabanı tablolarımızı ilişkilendirmemizin tek sebebi bu değildir. Haziran 1970’te Edgar Codd adlı bilgisayar mühendisi, elektronik veri bankalarının devasa boyutlara ulaşmasını fakat yine de küçük bir terminalde işlenebilmesini sağlayan bu modeli ortaya attığında, bütün veritabanları, örneğin, Adı, Soyadı, Adresi, TelNo1, TelNo2, TelNo3.. şeklinde fazlalık ve boşluk içeren düz, birbiri ardına disket yazılmış kayıtlardı. Codd, veri parçacıkların, örneğin kişino=telno şeklinde ad=değer çiftleri halinde yazılmasını önerdi. Bu bilgisayarın ana işlemcisinin (CPU) daha hızlı hesap yapmasını sağladığı gibi insan hatası faktörünü de azaltıyordu. (Aynı kişinin üç telefon numarası için üç ayrı yerdeki adresinin de düzeltilmesi yerine bunu bir yerde yapmak daha güvenli!)
Codd’ın sistemi, verilerin tutarlılığını da sağlıyordu. Veritabanı dosyalarında bilgi tutarlılığı, bir veritabanında ad=değer şeklinde bütün çiftlerin bir Birincil Anahtar dediğimiz ad’a ve bu ad’ın tabloda başka hiç bir kayıtta bulunmayan bir değere sahip olması gerekir. (Çünkü veritabanı ile çalırken ad=değer çiftlerini başka türlü tanımamız mümkün değildir. Bu disk üzerine yazılırken verilerimizin sıra veya yer kaygısı gütmeden yazılmasını sağlar.) Böylece hiç bir kayda ait olmayan ad=değer çiftçi bulunmuyor, ve hiç bir kaydın eksik alanı olmuyor (boş olabilir; bu eksik demek değildir.) Codd’ın bu buluşu veri-işlem alanında devrim sayılır. Codd’un zamanla geliştirilen modelinin beş ilkesi vardır:
1. Her bir değer müstakil olmalıdır (Bir kutuda üç telefon numarası birden bulunmamalıdır).
2. Ad=değer çiftleri Anahtar Değer (Birincil Anahtar) vasıtasıyla birleştirildiğinde ortaya başka bir kayda benzemeyen kayıt çıkmalıdır. (Aksi taktirde Birincil Anahtar özgün demek değildir!)
3. Bir değerin hangi kayda ait olduğu sadece bir Anahtar Değere (Birincil Anahtar’a) bakılarak bilinmelidir. (Bir telefonun ait olduğu kişiyi belirlemek için hem adına, hem adresine bakmak zorunda isek, aynı adda birden fazla kişi var demektir; kendimize yeni bir Birincil Anahtar bulmak zorundayız.)
4. Hiç bir kayıt, aynı ad için birden fazla değer almamalıdır. (Bir kişinin beş çocuğu varsa, 3 oğlu, üç kızı olamaz!)
5. Bir tablo, artık tekrar ikiye veya daha fazla tabloya bölünemeyecek kadar fazlalıktan arındırılmış olmalıdır.
Bu beş ilkeye tabloların Normalleştirilme Kuralları, buna uygun hale getirilmiş tablolara Normal Tablolar ve işleme de Normalizasyon denir.
Basit bir adres defteri yaparken, herkese üç telefon, bir faks ve bir de cep telefonu hanesi açmak ve bazı kişiler için bazı sütunları (alanları) boş bırakmak daha kolay bir çözüm olabilir. Bununla birlikte daha sonra uygulama programlarına veya Web sayfalarına temel olacak veritabanları geliştirirken, ilişkilendirilmiş tablolar kullanmak daha doğru olur. İlişkilendirmenin ilkelerinden, ilerde tablolarlarımızda ilişki kurarken söz edeceğiz.
İyi bir veritabanı tasarımı, iyi düşünülmüş tablo tasarımı ile başlar. Bu ilke uygulamada şu anlama gelir: Mouse işaretçisini Access simgesi üzerine doğru götürmeden önce, elinize bolca kağıt, bir de kalem alın ve başlayın tablo tasarımına. (Kağıdınız kareli, kaleminiz de kurşunkalem olursa ve elinizin altında bir de silgi bulunursa, tablo tasarımınızın başarılı olacağını şimdiden garanti ederim!) Önce kağıda bu veritabanı projesinin sonunda ortaya çıkmasını istediğiniz liste, rapor ve diğer ne türlü belge varsa, hepsini başlıklar halinde yazın. Bu kağıdı önünüze koyun ve ayrı sayfalara buradaki her bir maddenin kağıda döküldüğünde nasıl görünmesini istiyorsanız o şekilde görünümünü çizin. İstediğiniz başlıkları, alt başlıkları, sütunları ve satırları belirtin. Sonra bu sayfalarda gördüğünüz şekillere bakarak, alanları (sütun başlıklarını) listeleyin. Örneğin, kendinize bir telefon defteri-temas çizelgesi hazırlıyorsanız, alan tanımlarınız şöyle olabilir:
1. Sıra no = otomatik sayı
2. Adı = metin, 20 karakter boyutunda, boş olamaz
3. Soyadı = metin, 20 karakter boyutunda, boş olamaz
4. Adres Satır 1 = metin, 30 karakter boyutunda, boş olabilir
5. Adres Satır 2 = metin, 30 karakter boyutunda, boş olabilir
6. Şehir = metin, 20 karakter boyutunda, boş olabilir
7. Posta kodu = metin, 5 karakter boyutunda, boş olabilir
8. Ülke = metin, 20 karakter boyutunda, boş olabilir
9. Doğum tarihi = tarih (otomatik olarak boyutlanır), boş olabilir
10. Doğum gününde kart yollayacak mıyım= evet/hayır, boş olabilir
10. Eşinin Adı = metin 20 karakter boyutunda, boş olabilir
11. Çocuk 1 Adı = metin 20 karakter boyutunda, boş olabilir
12. Çocuk 2 Adı = metin 20 karakter boyutunda, boş olabilir
13. Çocuk 3 Adı = metin 20 karakter boyutunda, boş olabilir
14. Çocuk 4 Adı = metin 20 karakter boyutunda, boş olabilir
15. Ev telefon no = metin, xxxx-xxx-xxxx biçiminde, boş olabilir
16. İş telefon no = metin, xxxx-xxx-xxxx biçiminde, boş olabilir
17. Cep telefon no = metin, xxxx-xxx-xxxx biçiminde, boş olabilir
18. Faks no = metin, xxxx-xxx-xxxx biçiminde, boş olabilir
19. En son ne zaman görüştüm = tarih, boş olabilir
20. Son güncelleme tarihi = tarih, boş olamaz
Alan listesini tamamladıktan sonra bu alanlar, bir tabloda mı toplanmalı, birden fazla tabloya mı bölünmeli sorusuna cevap verin. Yukarıdaki örnekte iki noktadaki aksaklığı görmüş olmalısınız. Birinci aksaklık çocuklarla, ikinci aksaklık telefon numaralarıyla ilgili.
Önce birinci sorunu ele alalım. Beş çocuklu bir dostunuzun beşinci çocuğu bu listeye yazılamaz. O halde buradaki 16 alan en azından iki tabloya bölünmeli; çocuklara ilişkin olan alanlar dışındaki bütün alanlar “Aileler” tablosunda toplanmalı, bütün çocuklar “Çocuklar” adlı tabloda yer almalıdır. Çocuklar tablosunun alanları ise şöyle olabilir:
1. Sıra no = otomatik sayı
2. Çocuğun adı = metin, 20 karakter boyutunda, boş olamaz
3. Çocuğun ailesi kimliği = metin, 20 karakter, boş olamaz
Şimdi burada başka bir sorun var: çocuğun aile kimliği, babasının veya annesinin soyadı olacaksa ve aynı soyadı taşıyan iki dostumuz varsa, çocuğun kime ait olduğunu bilemeyiz. Aslında bu sorun, ortaya başka bir sorun daha çıkartıyor: diyelim ki aynı adda iki dostumuz var; ikisinin de eş ve çocuk durumu ile adreslerini ve telefon numaralarına ilişkin elimizdeki bilgilerin aynı olduğunu (mesela bu bilgiler elimizde yok ve dolayısılya bu sütunlar boş!) varsayalım. Bu iki kişiyi listeye “benzersiz kayıt” olarak nasıl kaydedebiliriz? Otomatik sıra numarasını birincil anahtar yaparak! Her aileye ait kaydın benzersiz olmasını sağlayan otomatik sıra numarasını aile tablosunda birincil anahtar yaparsak, daha sonra çocuk tablosuyla ilişki sağlayan anahtar olarak kullanabiliriz. Bunu görsel olarak ifade edelim:
Şimdilik bu tabloların oluşturulacağı üzerinde durmayalım. Burada sadece kavramsal olarak çocuklarla aileleri arasında bağ kurmaya çalışıyoruz. Aileler tablosunda “Aile Sıra No” adlı bir sütun açar ve bu sütunu Access’e Otomatik Sayı alanı olarak otomatik şekilde doldurtabiliriz. Sonra, çocukları kaydettiğimiz tabloda, her çocuğun ailesini, aile tablosundaki Aile Sıra No bilgisini tekrar ederek belirtebiliriz. (Nasıl’ın üzerinde durmuyoruz!) Diyelim ki Masum Sayan adlı iki arkadaşımızın ikişer çocuğu var. 5 numaralı aileye mensup Masum Sayan ile 6 numaralı aile mensup Masum Sayan ’ın çocukları da aynı Aile Sıra No’sunu aldıkları anda, gereksiz bilgi içeren veya bilgi kaybına yol açan bir tablo tasarımından kurtulmuş, yani Aile tablosunda “çocuk 1,” “çocuk 2,”.. “çocuk x” şeklinde kimi ailede boş kalacak, kimi ailede yetmeyecek sütunlar açmamış oluruz.
Yukarıda muhtemel alanlarımızın listesini döktüğümüzde, iki sorunla karşılaştığımızı söylemiştik. Birinci sorun çocuklarla ilgiliydi. Onu çözdük. Fakat aynı durum, telefon numaraları için de var. Birden fazla ev, iş, faks veya cep telefonu olanlara ilişkin tüm telefon numaralarını tablomuza işleyebilmek için mutlaka çocuk tablosunu eklediğimiz gibi, veritabanımıza ideal olarak dört ayrı telefon numaraları tablosu (ev, iş, faks ve cep telefonları tabloları) ekleyip, bunlara da Aile Sıra No sütunu açıp, her telefon numarası ile telefonun sahibini ilişkilendirebiliriz.
Böylece tablo tasarımının kağıt üzerindeki bölümü bitmiş oluyor. Nihayet sıra Access’i çalıştırmaya geldi.
Access’i çalıştırdıktan sonra, boş bir veritabanı oluşturalım. Fakat bu arada Access’in boş veritabanı şablolarını tanıyalım. Kullandığınız Access’in başka bir kullanıcı tarafından ayarları değiştirilmemişse, açıldığı anda karşınıza ne yapmak istediğinizi soran ve dosya seçmenizi sağlayan diyalog kutusu gelecektir. Bu kutuda “Access Veritabanı sihirbazları, sayfaları ve projeleri” maddesini işaretleyerek Tamam’ı tıklayın.
Access’in ayarları değiştirilerek bu kutunun açılması önlenmişse, karşınızda tamamen boş bir Access penceresi de görebilirsiniz. Bu durumda Dosya menüsünden Yeni maddesini seçerek (veya klavyede Ctrl tuşunu tutarak ve N tuşuna basarak), boş bir veritabanı oluşturmanızı sağlayacak diyalog kutusunun açılmasını sağlayabilirsiniz. Yeni diyalog kutusu açıldığında Veritabanı sekmesini tıklayın.
Access’i tasarlayan uzmanlar, çeşitli kullanım alanları bulunan on ayrı veritabanı şablonu hazırlamış bulunuyorlar. Access ile veritabanı projelerinde büyük bir ihtimalle bu şablonlar hemen her ihtiyacınızı karşılayacaktır. Access’i tanımak için bu şabloların teker teker hepsini seçip, oluşturulmasını önerdiği dosyaların oluşturulmasını sağlayıp, sonra şablon sihirbazının her bir veritabanında ne gibi tablolar açtığını, bu tablolara ne gibi görevler yüklediğini, ne gibi alanlar oluşturduğunu gözlemenizde yarar var. Veritabanı yapan Access sihirbazlarının bir diğer marifeti veri girme ve rapor alma işlerinde kullanacağınız formları da oluşturmaktır. Bu formları inceleyerek, ilerde kendi formlarınızı tasarlamakta kullanacağınız ipuçları edinebilirsiniz. Ayrıca Access 2000, sadece tabloları, formları ve raporları oluşturmakla kalmayacak, bu veritabanını, sanki kendi başına bir program gibi, kullanmanızı sağlayacak grafik ara yüzü bile inşa edecektir. Sihirbazları kullanarak, tabloları doldurulmaya, formları kullanılmaya ve raporları baskıya hazır veritabanlarını sık sık oluşturacaksınız; fakat kimi zaman bu tablolarda, formlarda veya raporlarda yeni bir alan eklemek, veya var olan bir alanı kaldırmak isteyebilirsiniz. Bunu yapabilmek için, Access’in bu nesnelerini nasıl oluşturabileceğimizi, nasıl düzenleyebileceğimizi veya değiştirebileceğimizi bilmemiz gerekir. Şimdi bir örnek üzerinde bunu birlikte yapalım.
Access Sihirbazlarıyla ilgili keşif turunu bitirdiğinizde, Yeni diyalog kutusunda Boş Access Veritabanı maddesini işaretleyip Tamam’ı tıklayın. Şimdi, kendi veritabanımızı kendimiz oluşturmaya başlayabiliriz. Açılacak diyalog kutusunda Genel sekmesinin seçili olmasına dikkat edin; ve Boş Veritabanı simgesini ve Tamam’ı tıklayın; Access 2000 ‘in önerdiği “vt1.mdb” adını “Adres Defteri.mdb” olarak (veya oluşturmak üzere yukarıda kağıt-kalemle planını yaptığınız veritabanına uygun bir ad vererek) değiştirin; yeni veritabanınızı Veritabanı penceresinde işlenmeye hazır bulacaksınız. Nesnelerden Tablolar’ın seçildiğini, ve tablo oluşturmak için kullanabileceğiniz üç aracın kısa yolunu görüyorsunuz:
Bunlar, tasarım görünümünde, Sihirbaz kullanarak ve veri girerek tablo oluşturmanızı sağlayan yöntemlerdir. Madem ki Access 2000 ile tabir yerinde ise sıfırdan tablo oluşturmaya karar verdik; o halde “Tasarım görünümünde tablo oluştur” maddesini tıklayarak, tablo oluşturma penceresini açın. Bu noktada yukarıda tablo tasarımıyla ilgili bölümde kendi veritabanımızı planladıysanız, bu planları önünüze çekin. Bu alıştırmayı yapmadıysanız, örnek olarak ele aldığımız Adres Defteri’ni birlikte oluşturabiliriz.
Tasarım görünümde karşınıza gelen tablo biçimindeki araç, tablonuzdaki alanların adlarını, özellikleri ve doldurulması için gerekli işlemleri belirteceğiniz yerdir. Aile tablosunu oluşturmak için imlecinizi Alan Adı sütununun birinci satırının içine getirin ve “AileSıraNo” yazın. Kendi veritabanızı oluşturuyorsanız, herhangi bir tablodan işe başlayabilirsiniz; bu tablolardan birini seçin ve birinci sütunun adını yazın.
Access 2000, diğer Ofis programları, sadece menüleri, diyalog kutuları ve yardım dosyaları bakımından Türkçe olmakla kalmayıp, aynı zamanda içeriğinde de Unicode’u destekleyen bir programdır. Bu bakımdan tablolarınızda, formlarınızda, raporlarınızda, makrolarınızda ve hatta kullanılmaya hazır fonksiyonlarda, içerik ve başlık olarak Türkçe karakter kullanabilirsiniz.
Hemen her türlü bilgi işlem ürününün Internet’te kullanıldığı veya Internet malzemesi olarak değerlendirildirildiği günümüzde veritabanlarına dayanan Web uygulamaları da hızla yaygın hale gelirken, hazırlayacağınız Access dosyalarının Microsoft ODBC (Open Database Connectivity) tekniği ile Web Server’a yüklenip yüklenmeyeceğini hesaba katmalısınız. Access dosyalarınız, ODBC yoluyla bir Web Server’a veri kaynağı olarak tanıtılacaksa, Web Server programının ve ona ev sahipliği yapan işletim sisteminin Unicode uyumlu olup olmadığı, sizin kullandığınız Alan adlarının doğru okunup okunmamasını da belirler. Veritabanının içeriği, sonuç itibariyle Web sayfasının unsurları arasında Browser’a gönderilecek ve orada yorumlanacaktır. Bugün sadece Netscape browser programının bazı işletim ortamlarında kullanılan sürümleri Unicode okuyamaz. Bu browserları kullanan Internet ziyaretçileri, sayfanızın bazı unsurlarını Türkçe karakterlerle göremezler. Fakat alan adlarınızdaki Türkçe karakterlere gönderme yapan programlar ve Scriptler, bu adları bulamadıkları taktirde, veri-yönlendirmeli Web uygulamalarınız, örneğin ASP programlarınız hata mesajı verirler.
Veritabanlarınızı ne tür Web Server’a yükleyeceğinizi bilmiyorsanız, alan adlarında Türkçe karakter kullanmaktan kaçının.
Yukarıdaki örnek planda bu sütunun adının “Aile Sıra No” olmasını kararlaştırdığımız halde, burada alan adında boşluk bırakmadığımıza dikkat etmiş olmalısınız. Bu, daha sonra yazacağımız veri seçme komutlarının alan adlarında boşluk istememesinden kaynaklanıyor. Sonra klavyenizde sekme tuşuna basarak, imlecin Veri Türü sütununa gelmesini sağlayın ve burada beliren aşağı ok simgesini tıklayarak (veya klavyede Alt tuşunu tutarak ve aşağı ok tuşuna basarak) veri türleri listesini açın:
Burada gördüğünüz veri türlerini tanıyorsunuz; bizim örneğimizde birinci alanımıza Access 2000’in otomatik olarak sıra numarası vermesini istediğimiz için burada Otomatik Sayı türünü seçiyoruz (Siz, kendi planınıza uygun bir türü seçebilirsiniz).
Tablo oluşturma penceresinin üst tarafında yaptığınız seçime göre, pencerenin Alan Özellikleri başlıklı alt bölümündeki bilgilerin değiştiğine dikkat edin. Buradaki kontrollerin çoğu Access ile veritabanı oluşturma beceriniz arttıkça kullanılacak niteliktedir. Alan özellikleri, o alandaki bilgilerin boyut, renk veya konumu gibi niteliklerini ve gizli olmek-görünür olmak gibi davranış biçimlerini tanımlar. Daha sonra verilerimizi biçimlendirirken bu kontrollerden yararlanacağız. Bazı alanların bazı özellikleri yoktur. Örneğin Alan Boyutu özelliği sadece metin, sayı ve otomatik sayı alanları için geçerlidir. Şimdi alan özelliklerinde sık kullanacaklarımızı ele alalım:
Metin Alanları için alan boyutu: 0 ile 255 karakter arasında olmalıdır. Diğer alanların boyut sınırlaması yoktur. (Varsayılan boyut: 50)
Sayı alanları için alan boyutu: Sayı olarak belirlediğiniz alanın boyutunu, Alan Özellikleri bölümünde Alan boyutu satırının sağındaki aşağı oku tıklayarak, şu seçenekler arasından seçebilirsiniz: Byte, ondalık, tamsayı, uzun tamsayı, tek, çift, yineleme kimliği (Replication ID).
Sayılar ve Paralarda Uzunluk
Veri alanınız Otomatik Sayı ise, alan boyutu ya uzun tamsayı, ya da “yineleme kimliği” adı verilen otomatik değer olur. Alan türünüz Sayı ise şu alan boyutlarından birini seçebilirsiniz.
Boyut Tanım
Byte 0’dan 255’e kadar tam sayı tutar.
Ondalık (.adp) dosyası olarak -10^38 -1’den 10^38 -1’e kadar, (.mdb) dosyaları olarak -10^28 -1’den 10^28 -1 ‘e kadar sayı tutar; virgülden sonra 28 basamak gösterir.
Tamsayı –32,768’den 32,767’e kadar kesirsiz sayı tutar.
Uzun tamsayı (Varsayılan) –2,147,483,648’den 2,147,483,647’e kadar kesirsiz sayı tutar.
Tek –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.
Çift –1.79769313486231E308’den –4.94065645841247E–324’e kadar negatif, 1.79769313486231E308’den 4.94065645841247E–324’e kadar pozitif sayı tutar; 15 basamaklı ondalık bölümü olabilir.
Replication ID Küresel benzersiz tanımlayıcı (Globally unique identifier--GUID)
Veritabanı dosyalarınızın kolay açılıp kapanması ve veri işlemin yeterince hızlı yapılabilmesi için alanlarınızı tutacakları en büyük sayıdan daha fazla sayı tutabilir şekilde tanımlamayın. Diğer taraftan alanınızı girebileceğiniz değerden küçük tutarsanız, bu kez girdiğiniz değerlerin fazla gelen kısımları kesilecek, yani verileriniz tahrip olacaktır.
Sayı ve para birimi verilerinizi hazır biçimlendirme şablonu ile değil de kendiniz biçimlendirme ifadesi yazarak biçimlendirmek isterseniz, şu ayarları yapabilirsiniz (bu ifadeleri, Alan Özellikleri bölümünde biçim kutusuna yazacaksınız):
0;(0);;”Yok” Normal değerleri normal şekilde, negatif değerleri parantez içinde gösterir; boş bırakıldığında yerine “Yok” yazar.
+0.0;-0.0;0.0 Artı ve eksi işaretini gösterir,; boş bırakıldığında yerine 0.0 yazar.
Biçim: Siz nasıl girerseniz girin verinin tabloda (ve daha sonra bu tablodan yapılacak şekilde oluşturulacak raporlarda ve formlarda) nasıl görüntüleneceğini belirler. Ayrıca buraya yazacağınız biçim komutları, girilebilecek verinin niteliğini de tayin eder. (Ayrıntılı biçim ifadeleri için Ek 1’e bakınız.)
Giriş maskesi: Veritabanıza verileri girerken, önce girişi kolaylaştırmak, daha sonra da
veri işlem sırasında verilerin istediğiniz biçimde olmasını ve dolayısıyla işlemi kolaylaştırmak amacıyla, veri girişini belirli bir biçim kuralına bağlayabilirsiniz. Söz gelimi telefon numaralarının daima (0555) 555-5555 gibi girilmesini sağlamak için bir metin alanına bunu sağlayacak giriş maskesi adı verilen komut ifadesini yazabilirsiniz. Bunun için giriş maskesi olarak (9999) 000 0000;;_ yazmanız gerekir. Fakat Access 2000, sık kullanılan, telefon numarası, Vergi dairesi ve numarası, posta kodu, sosyal sigortalar numarası, sigorta kod numarası, parola, ve çeşitli tarih ve saat biçimlerine uygun giriş maskelerini hazır veriyor.
Bu hazır maskeleri bir alanınızın Alan Özellikleri bölümüne katmak için, giriş maskesi satırının sağındaki üç nokta simgesini tıklayın; açılacak Giriş Maskesi Sihirbazı’nda arzu ettiğiniz giriş biçimini seçin. Bir bilginin tablolara veya formlara belirli bir maske ile girilmesi, mutlaka o şekilde kaydedileceği anlamına gelmez. Özellikle parantez, kesme ve benzeri işaretleri kullandığınız giriş maskelerini veritabanı dosyaya yazılırken kaydettirmeniz gerekmez; bu dosya boyutunda tasarruf sağlar. Daha sonra raporlarınızda veya Access dosyalarından başka programlar için veri ihraç ederken bu işaretlerin yeniden konulmasını sağlayabilirsiniz.
Geçerlik Kuralı, geçerlik metni: Veri işlemin sağlıklı olabilmesi için girilen verilerin gerçekten girilmesi gereken türde olması şarttır. Access, veri girilmesi sırasında girilen değerin geçerliliğini sınayabilir ve veri gireni uyarır. Veri girişinde uyulacak kuralları Geçerlik Kuralı kutusunda, geçirli olmayan veri girişinde görüntülenecek uyarı metnini ise geçerlik metni kutusunda belirtirsiniz. (Bu kutuların etiketini Geçerlilik şeklinde göreceksiniz. Bu, Türkçe imlâ ilkelerine aykırıdır.)
Geçerlik kuralları kutusuna yazabileceğiniz bazı ifade örnekleri şunlar olabilir:
<> 0 Girilen değer sıfırdan farklı olmalıdır
> 1000 Or Is Null Girilen değer ya boş olmalıdır, ya da 1000’den büyük olmalıdır.
Like "A????" Girilen değer 5 karakter boyutunda olmalıdır ve "A" harfi ile başlamalıdır.
>= #1/1/96# And <#1/1/97# Girilen değer 1996 içinde olmalıdır.
Geçerlik metni ise, geçerli olmayan bir değer girildiğinde, kullanıcının uyarılmasında kullanılacak metindir. Buraya yazacağınız metin, kullanıcıya doğru veri biçimi hakkında kısa fakat anlamlı bilgi vermelidir.
Gerekli: Bu özelliğin sağında belirecek aşağı oka basarak, Evet veya Hayır’ı seçebilirsiniz. Bir alanı Gerekli hale getirirseniz, veri tablosunu doldururken, Access bu alanın boş bırakılmasına izin vermez. Yukarıdaki planlama örneğinde bazı alanların niteliğini kağıda dökerken yanlarına “Boş bırakılabilir,” bazılarına ise “Boş bırakılamaz” notunu koyduğumuzu hatırlıyor olmalısınız. Boş bırakılabilir alanlar için bu kutuya “Hayır” (yani doldurulması gerekli değil!), boş bırakılamaz alanlara ise “Evet” (yani doldurulması gerekli!) kaydını koymamız gerekir.
Sıfır uzunluk İzni: Boş bırakılmasını önlediğiniz, yani gerekli alanların boyutu sizin için önem taşıyor olabilir. Doldurulması gerekli alanların doğru doldurulmasını sağlamanın bir yolu, alana girilecek değerin boyunun sıfır olmasını önlemektir. Yukarıdaki örnekte geliştirdiğimiz veritabanının kullanılabilir olması için en azından kişilerin ad ve soyadlarının tabloda yer alması gerekir; aksi taktirde ortada tablo denecek bir şey bulunmaz. Soyadı olmayan kişilerin ise adları ile yetinemeyiz. O halde bu iki alanı hem gerekli yapar, hem de sıfır uzunluk izni vermezsek, tablomuzu doldururken isteyerek veya kazayla bu alanları boş bırakmamız tehlikesini önlemiş oluruz.
Sıralı (Endeks): Access ile oluşturduğumuz veritabanlarını işlerken yapacağımız işlerin başında, tablolarımızdan belirli ölçütlere göre seçmeler (sorgular) yaptırtmak gelecektir. Basit bir sorgunun hızla tamamlanabilmesi için Access’in tablolardaki alanları önceden endekslemesi yerinde olur. Bir alanın Alan Özellikleri bölümünde Sıralı kutusunun sağındaki aşağı oku tıklarsanız, “Hayır” seçeneğinin yanı sıra iki ayrı “Evet” seçeneği bulunduğunu göreceksiniz. “Hayır” seçeneği, bu alanın önceden endekslenmesini önler. Bu alandaki verilerin endekslenmesini sağlayan diğer iki seçenekten birincisi, “Evet (Yineleme Var)”, Access’in oluşturacağı endekste, bu değerden birden fazla olmasına imkan verir. Bizim örneğimizde, kişi ad ve soyadlarından birden fazla olması ihtimali öngörüldüğüne göre, endeksimizin tekrara izin vermesi gerekir. Bir alan, tablodaki kayıtların benzersiz olmasını sağlayan Birincil Anahtar alanı olarak tayin edildiyse, tekrara izin verilmemesi gerekir. Bunun için, bu kutudaki endeksleme yaptırtan ikinci seçeneği, “Evet (Yineleme Yok)” maddesini seçmemiz gerekir.
Unicode Sıkıştırma: Access 2000, Ofis 2000 ailesinin diğer üyeleri gibi Unicode-uyumlu, yani içinde 65 bin 536 adet harf, rakam ve işaret bulunan yazı tipi (font) sistemini destekler. Unicode uyumlu olmayan programlar ise sadece 256 karakter içeren fontları kullanabilirler. Metin, not ve köprü (Web adres bağlantısı) türündeki verilerinizde Türkçe karakter bulunuyorsa, alan özelliğinde Unicode Sıkıştırma’nın “Evet” olması gerekir. Bu durumda Access, bu alandaki veriyi kaydederken her bir karakter için gerekli alanı (2 byte) ayıracaktır. Bu tür alanlarınızda Türkçe karakter yoksa, Access dosyasının büyüklüğü etkilenmeyecektir. Dolayısıyla Türkçe veritabanı oluştururken bu değeri sürekli “Evet” ayarında tutmak dosya büyüklüğü bakımından olumsuz bir etki yapmaz; sadece Türkçe karakterlerinizi korumuş olursunuz.
Tablo tasarımında son nokta, tablolarımızı başkalarının da kullanabileceğini gözönünde tutarak, tanım sütununa gerekli açıklamaları yazmaktır. Tablolarımızı başkasıyla paylaşacak olmasak bile, bir süre sonra alanlarımızın ne amaçla oluşturulduğunu hatırlamak zor olabilir. Buradaki gibi “Adı,” “Soyadı” adını verdiğimiz alanların işlevini hatırlamakta sorun olmayacağı düşünülebilir. Fakat verilerin başka tablolardan alındığı durumlarda veya değerlerle ilgili uyarıcı notların gerektiği durumlarda, Tanım satırlarına yazacağınız bilgiler işe yarar. Tabloyu yaptıysanız, tasarım görünümünde son şekli şöyle olmalı:
Access’te veritabanı oluşturmanın birinci adımını attık: ilk tablomuzu yaptık; alanlarını belirledik; alanların özelliklerini tayin ettik. Buradaki örneği uyguluyorsanız, şimdi ikinci bir tablo oluşturmanız gerekir. Bitmiş tasarım görünümüne bakarak, yukarıdaki bilgiler ışığında ikinci tabloyu siz oluşturabilir misiniz?
Burada dikkat edilecek tek nokta, Aile Sıra No adlı alanın içeriğinin doldurulması için gerekli ifadeyi Arama Sihirbazı’na yazdırtmaktır. Çocuklar tablosunun taramın görümünde ikinci alanın adını yazdıktan sonra Veri Türü sütununda seçme okunu tıklayın ve açılan listeden Arama Sihirbazını seçin.
Arama Sihirbazı’nın birinci diyalog kutusu, bu alana girilecek değerlerin mevcut bir tablo veya sorgu sonucundan mı alınacağını, yoksa bu değerleri sizin doğrudan mı yazacağınızı belirler. Buradaki örnekte, veritabanımızda Çocuklar tablosunu doldururken, bu sütunun yanında bir seçme oku belirmesini ve bu oku tıkladığımızda Aileler tablosunda, Aile Sıra No alanına girilmiş bütün değerlerin gösterilmesini istiyoruz. Başka bir deyişle bu sütuna girecek bilgileri, Aileler tablosundan alacağız. O halde, Arama Sihirbazı’nın ilk diyalog kutusunda “Değerler tablo veya sorgudan alınsın” maddesini işaretleyerek, İleri düğmesini tıklamamız gerekir.
Arama Sihirbazı’nın ikinci diyalog kutusu ise bir önceki tercihinize göre ya veritabanınızdaki bütün tablo ve sorguların listesini içerir ve siz bu listeden veri alacağınız tablo veya sorguyu seçersiniz; ya da seçme yapacağınız veri listesini oluşturmanız için küçük bir tablo oluşturma aracı açılır.
Veri seçme işini bir tablo veya sorgudan yapacaksanız bu tablo veya sorgunun adını seçerek, İleri’yi tıklayın. Veri seçme işini kendi vereceğiniz değerlerle yapacaksanız, veri seçme listesi diyalog kutusunda veri seçme listesinin tek sütunlu olduğunu göreceksiniz; seçiminizi daha çok sütunlu bir listeden yapmak istiyorsanız önce yeni sütun sayısını yazın; sonra aşağıdaki “Süt1” atdlı örnek sütunun adını tıklayın; arzu ettiğiniz kadar sütun belirecektir; şimdi seçilecek değerleri bu sütunlara ve satırlara girin ve İleri’yi tıklayın.
Her iki yolda da Arama Sihirbazı’nın üçüncü diyalog kutusunda, ya mevcut tablo ve sorgulardan seçtiğiniz ya da kendi oluşturduğunuz değerli içeren alanlar kullanılabilir alan olarak sıralanacak ve Son’u tıkladığınızda Arama Sihirbazı, tasarım penceresinin Alan Özellikleri bölümünde Arama sekmesindeki değerleri dolduracaktır. (İlerde arama ve sorgu konusunda uzmanlaştığınızda bu değerleri siz de doldurabilirsiniz. Şimdilik sadece Arama sekmesinde Satır Kaynak Türü ve Satır kaynağı kutularına yazılan ifadeleri inceleyin ve Access’in tablolara ve tabloların alanlarına nasıl gönderme yaptığına dikkat edin.)
Bu suretle oluşturduğumuz otomatik değer seçme imkanını kullanmak üzere Çocuklar tablosunu açtığımızda ve yeni bir girdi için Aile Sıra No sütununda bir satırı tıkladığımızda, kutunun sağ kenarında bir seçme oku belirdiğini görürüz. Bu oku tıkladığımızda ise açılan listede, bu ana kadar Aile tablosunda Aile Sıra No sütuna girdiğimiz bütün değerleri görürüz.
Tablo tasarımını öğrendiğimize göre, şimdi tablolara veri girme, veri arama ve tabloların Access 2000 penceresi içinde görüntülenme yöntemlerinden söz edebiliriz. Bir veritabanı ile veri-işleme başlamadan önce verileri girmemiz gerekir!
Access’ta belki de en kolay yapacağınız iş, tabloya veri girmek olsa gerek: yeni oluşturduğunuz veya önceden mevcut bir tabloyu, veritabanı penceresinde açın ve başlayın sütunlara ve satırlara gönlünüzden geçenleri yazmaya. Fakat bunun daha kolay yolları da var.
Önce veri tablomuzun ekrandaki penceresinde yapabileceğimiz görünüm değişikliklerinden söz edelim. Veri tablosunu, adını iki kere tıklayarak (Araçlar menüsünden Seçenekler maddesini ve Görünüm sekmesinde “Tek tıklatmada aç” seçeneğini seçerek bunu değiştirebilirsiniz), veya tabloyu seçtikten sonra Veritabanı penceresinde Aç simgesini tıklayarak açabilirsiniz. Bir tablonun adını sağ tıklayıp, açılacak menüden Aç maddesini de seçebilirsiniz.
Açtığınız bir veri tablosunun sütun genişliği, o alandaki verilerin tümünü rahatça okumanıza engel oluyorsa, iki sütun başlığının ortasındaki çizgiyi Mouse işaretçisi ile tutarak, sağa veya sola oynatarak, sütun genişliğini değiştirebilirsiniz. Bu sırada Mouse işaretçisi iki tarafında ok bulunan dikey çizgi şeklini alır.
Aynı şekilde satırlarınızın yüksekliğini de satır başlıklarının arasındaki çizgiyi Mouse işaretçisiyle tutarak, artırabilir, azaltabilirsiniz. Bir sütunun genişliğini değiştirdiğiniz zaman diğer sütunların genişlikleri etkilenmez; ancak bir satırın yüksekliğini değiştirirseniz, bütün satırların yüksekliği değişmiş olur. Sütun genişliklerinin Access 2000 tarafından otomatik olarak ve optimum ölçüde ayarlanmasını sağlamak için sütun başlığının sağ sınır çizgisini iki kere tıklayabilirsiniz. Sütun genişlikleri ve satır yüksekliklerini, sütunu ve satırı seçerek Biçim menüsündeki ilgili maddeleri seçerek de yapabilirsiniz. Mouse işaretçisini sütun veya başlığının üzerine getirin ve tıklayın (işaretçi sütun başlığında iken imlecin kısa ve kalın bir aşağı ok şekline döndüğünü göreceksiniz); şimdi sütun veya satır başlığını tıklarsanız, bütün sütun veya satır seçilmiş olur. Biçim menüsünden Satır yüksekliği veya Sütun genişliği maddesini seçerek ve açılacak diyalog kutularına gerekli değerleri girerek, ayarları değiştirebilirsiniz.
Veri girmenizi ve verilenizi incelemenizi engelleyen, o sırada içeriğini görmeniz gerekmeyen sütunları geçici olarak gizleyebilirsiniz. Sütunu seçtikten sonra Biçim menüsünden Sütunları gizle maddesini seçerseniz, Access 2000 bu sütunları geçici olarak ortadan kaldırır. Yine Biçim menüsünden Sütunları göster maddesini seçerek ve açılacak kutuda görüntülenmesini istediğiniz sütunların adının önüne işaret koyarak, yeniden görünmelerini sağlayabilirsiniz.
Her veri tablosunun son satırı, yeni kayıt girmeniz için hazır sayılır. Yeni bir kayıt girmek için, sütun başlığında bir yıldız simgesi bulunan son satırın herhangi bir sütununa tıklayarak, klavyeden verilerinizi girebilirsiniz. Aynı işi Araç buçuğunda Yeni Kayıt simgesini tıklayarak da yapabilirsiniz.
Veri tablosu içinde kayıttan kayıta ve bir kayıtta alandan alana geçebilmek için, Mouse işaretçisini arzu ettiğiniz kutunun içinde tıklayabilirsiniz; klavyede ok tuşlarına, veya sekme ve Enter tuşlarına basarak imleci arzu ettiğiniz yere götürebilirsiniz; bu tuşların imleci yeni alanın başına mı, sonuna mı götüreceğini Araçlan menüsünden Seçenekler’i ve orada Klavye sekmesini seçerek de belirleyebilirsiniz. İlmecin içinde bulunduğu hücrenin satır başlığında bir kalem simgesi belirir; bu o satırın edit edilmeye (düzenlenmeye, değiştirilmeye, ek yapılmaya) hazır olduğunu gösterir. Bir hücrede varolan verinin önüne, arkasına, içine yeni veri yazabilirsiniz; mevcut veriyi silebilirsiniz; başka yerlerde Windows panosuna kopyaladığınız metin, sayı veya diğer unsurları Access hücrelerinize yapıştırabilirsiniz. Windows Panosuna kopyalanmış unsur Access 2000 veritabanında bulunması imkanı olmayan bir unsur ise Düzen menüsünde yapıştırmayla ilgili maddeler etkin olmaz; klavlede Ctrl+V tuşuna basmanız da bu öğeyi Access veri tablosuna yapıştırmaz.
Bir kaydı (satırı) veya bir alanı (sütunu) silmek için Düzen menüsünden Kayıt Sil ve Sütun Sil maddelerini seçmeniz yeter. Araçlar menüsünden Seçenekleri ve Düzen/Bul sekmesinde Onayla bölümünde hangi silme işlemleri için Access 2000’in sizden onay istemesini arzu ettiğinizi de belirtebilirsiniz. Kayıt silme işlemi, onaylandıktan sonra veritabanına kaydedilir ve bir daha geri alınamaz.
Veritabanındaki bilgilerin birbiri ile tutarlı olmasına bilgi tutarlılığı (referential integrity) denir ve bunu korumak için Access 2000 bazı sütunları ve tabloları silmenize izin vermez. Aşağıda ilişkilendirme konusu ele alırken, bilgi tutarlığından söz edeceğiz. Bazı sütunları ve satırları silmeye çalıştığınız zaman, ilişkileri korumak isteyen ve silme işlemi dolayısıyla başka kayıtları ve sorguları silmek zorunda kalan Access 2000, sizden onay isteyecektir.
Veri tablosundaki kayıtlar, belirli alanlar itibariyle artan veya azalan sıraya sokulabilir. Sıralamak istediğiniz sütunu seçin ve Araç çubuğunda artan veya azalan sıralama simgesini tıklayın. Bunu, Kayıtlar menüsünde önce Sırala, sonra da Artan veya Azalan sıralama maddelerini seçerek de yaptırabilirsiniz.
Sıralama işlemini sıralayacağınız sütundaki herhangi bir satırı sağ tıklayıp,açılacak menüden, Artan Sıralama ve Azalan Sıralama maddelerini seçerek de yapabilirsiniz.
Artan sıra, sayılarda en küçükten en büyüğe, tarihlerde en eskiden en yeniye, metinlerde ise A’dan Z’ye demektir. Azalan sıra ise bunun tersidir. Access’te her bir satır bir kayıt sayıldığı için bir sütunu sıraladığınız zaman o satıra ait diğer hücrelerdeki bilgiler de sıralanan sütundaki hücre ile birlikte yeni yerlerine giderler; böylece bir satırın hücreleri yer değiştirmemiş olur.
Veri tablolarınız bir değeri gözle aramanıza imkan vermeyecek kadar büyük olabilir. Bu durumlarda bir değeri bulmak için Access 2000’in yardımını isteyebilirsiniz. Araç çubuğundaki Bul simgesini tıklayarak veya Düzen menüsünden Bul maddesini seçerek, arama yaptırabilirsiniz. Access 2000’in bir yeniliği Bul ve Değiştir araçlarının tek kutuda iki sekme halinde toplanmasıdır. İki sekme arasındaki görünüm farkı Değiştir sekmesinde bulunacak değerin yerine konulacak yeni değerin girileceği kutunun bulunmasıdır.
Bulma işlemi ya o sırada imlecin içinde bulunduğu bir alanda, ya da tablonun tümünde yapılır. Bul sekmesinde Aranan kutusuna aradığınız değeri yazın; aramanın yapılacağı yeri gösteren Bak kutusunun seçme okunu tıklayarak, aramanın tablonun tümünde mi, yoksa imlecin bulunduğu sütunda mı (imleç bir sütunda değilse, birinci sütunda) yapılacağını belirtin. Eşleştir kutusunda ise aramanın yapılacağı alan parçasını belirtebilirsiniz. Aradığınız değerin sadece alanın tümünü olduğu durumların bulunması için bu kutuda Tüm Alan; alanın herhangi bir bölümü olduğu durumların bulunması için Alanın Bir Bölümü; ve verdiğiniz değerle başlayan alanların bulunması için de Alanın Başlangıcı seçeneklerini seçmeniz gerekir.
Ne arıyorsunuz? Ne bulursunuz?
Bu noktada yapacağınız üç ayrı seçim, Access 2000’in ne arayacağını belirler. Bir örnekle belirtelim:
Eşleştir Aranan Bulunan Bulunamayan
Alanın bir bölümü tas Tasarım
Tasa
Tas
Mutasarrıf
Tüm Alan tas tas Tasarım
Tasa
Mutasarrıf
Alanın başlangıcı tas Tasarım
Tasa
Tas
Mutasarrıf
Arama kontrollerinin tümünü görüntüleyerek arama kutusunu büyütmeye yarayan Tümü düğmesini tıklarsanız, Arama yönünü belirtebileceğiniz bir seçme kutusu ortaya çıkar. Buradaki seçenekleriniz, aramanın imlecin bulunduğu noktadan yukarı veya aşağı ya da tüm tabloda yapılmasını sağlar.
Bul kutusu genişlediğinde ortaya çıkan diğer bir kontrol unsuru ise aranan kutusuna yazdığınız değerin büyük harf-küçük harf oluşu ile bulunmasını istediğiniz değerin büyük harf-küçük harf oluşu arasında ilişki kurup kurmamaktır. Eğer Access, sizin kullandığınız harflerin büyük veya küçük oluşuna dikkat etsin istiyorsanız, Büyük Harf/Küçük Harf Eşleştir kutusuna işaret koyun. Bu durumda, örneğin “tas” değerini arattırdığınızda “Tas” ve “TAS” bulunmayacaktır.
Buradaki “Alanları biçimli olarak ara” kontrolü ise tarih/saat gibi veya para birimi gibi belirli biçimlerde görüntülenen alanların, veritabanında bulunduğu basit şekliyle değil, tablo tasarımı sırasında talep ettiğimiz biçimde ele alınarak arama yapılmasını sağlar. Bunu biraz açalım. Diyelim ki Tarih alanındaki değerlerimizin kısa tarih olarak biçimlenmesini istiyoruz. Bu biçim, Access 2000 tarafından ancak bu veri görüntülendiği zaman uygulanır. Siz verileri “20-09-99” olarak girmiş olabilirsiniz; ama tasarım sırasında bu alan için uzun tarih biçimini seçtiyseniz, Access 2000, bu veriyi “20 Eylül 1999 Pazartesi” olarak biçimleyerek görüntüleyecektir. Arama yaparken, arama değeri olarak “20-09-99” yazar ve Access’ten bu değeri bulmasını isterseniz, ve “Alanları biçimli olarak ara” seçeneği seçilmiş olursa, aradığınız değer hiç bir zaman bulunamayacaktır. Çünkü Access sizin biçim talimatına uygun olarak tarihleri uzun biçimde biçimliyor fakat siz kısa tarih biçiminde aranacak değer veriyorsunuz. Oysa bu kutu işaretlenmemiş olsa idi, Access verdiğiniz meşru tarih biçimini tablosundaki bütün tarih biçimleriyle karşılaştıracak ve verdiğiniz tarihi bulursa, bu kaydı size gösterecekti.
“Alanları biçimli olarak ara” seçeneği seçilmiş olarak yapılan aramalar Access 2000’i olağanüstü yavaşlatır. Alanın bir bölümü” seçeneği ve aranan yerin tüm tablo olması da Access 2000’in arama hızını düşürür.
Değiştirme, bulmaya dayanan ve bulunan değerlerin sizin vereceğiniz bir değerle değiştirilmesi işlemidir. Değiştir aracının neleri bulabileceğini, Bul aracını tanırken gördük. Burada sadece sağdaki farklı kontrol düğmeleri üzerinde duralım.
Sonrakini Bul düğmesini tıkladığınızda Access 2000, sadece bulma işlemini yapar; hiç bir şey değiştirmez. Aradığınız değerin doğru bulunduğuna ve değiştirmenin verilerinize zarar vermeyeceğine emin olduktan sonra Değiştir düğmesini tıklayabilirsiniz. Bu noktada değiştirme işinden vazgeçerseniz, İptal düğmesini tıklayın. Değiştir düğmesi, sadece bulunan değeri değiştirmekle kalmaz, varsa, bir sonraki aranan değeri bulur. Tümünü Değiştir düğmesi ise tek tek bulma-değiştirme yerine tablonuzdaki tüm aranan değerleri otomatik olarak bulur ve onay gerekmeden değiştirir. Bu düğmenin gerçekten hızlı çalıştığını göreceksiniz. Ama bu düğmenin bir özelliği daha var ki, tıklamadan önce iki kere düşünmeniz yerinde olur: yaptığınız değişiklikler kalıcı olur; geri alınmaz.
Bul aracı ile verilerde araştırma yapmak mümkün olmakla birlikte, kimi zaman belli bir ölçüte uygun tüm kayıtları bir arada görmek isteyebiliriz. Bunu Süz aracıyla yaparız. Sözgelimi, elimizdeki veride sadece ikinci yarıyıl sınavında 5 alan öğrencilerin veya oturduğu yer Tekirdağ olanların, sadece erkeklerin veya sadece kadınların listelenmesini isteyebiliriz.
Bunu yapmanın en kolay yolu Seçime Göre Süzme yöntemidir. Süzme ölçütü olacak verinin bulunduğu kaydın, ilgili alanını (sütununu) bulun ve Access 2000’e bu sütunda sadece bu değeri içeren kayıtları göstermesini, diğerlerini göstermemesini bildirin. Ölçüt olarak kullanacağınız verinin bulunduğu sütunu tıklayın ve ya Araç çubuğundan Seçime Göre Süz simgesini tıklayın, ya da veritabanında bir yeri sağ-tıklayıp açılan menüden Seçime Göre Süz maddesini seçin.
Veri tablosunun büyüklüğüne ve seçtiğiniz alanın endekslenmiş olup-olmamasına göre, Access 2000, seçme ve sadece seçilenleri görüntüleme işini sür’atle yapacaktır.
Listede sadece seçilen kritere uygun veri içeren kayıtlar yer alırken, Araç buçuğundaki Süzgeci Kaldır simgesi de etkin hale gelecektir. Bu simgeyi tıklayarak, tablonun tümünü görüntületebilirsiniz. Access 2000, tablonuza uyguladığınız son süzme işleminin ölçütünü unutmaz ve bu simgeyi yeniden tıkladığınızda son süzme işlemi yeniden uygulanır. (Süzgeci kaldırdığınızda bu simgenin etiketi Süzgeci Uygula şeklinde değişir.) Bir tablonun tümünü değil sadece süzülmüş kayıtları içerdiğini, tablonun alt kenarındaki “(Süzülmüş)” kelimesinden anlarız. Bu kelimenin yanında kaç adet süzülmüş kayıt olduğu da gösterilir.
Seçme yoluyla süzme işlemi birden fazla alan veya değer ölçüt kullanılanarak da yapılabilir. Diyelim ki seçme işlemini bir sınıftaki öğrencilerin listesinde hem cinsiyet, hem de alınan nota göre uygulamak istiyorsunuz. Bunu yapabilmek için, uygulayacağınız birden fazla ölçüt veri değerinin tabloda yan yana sütunlara gelmesini sağlayın. Bir sütunun tümünü seçer ve Mouse işaretçisiyle sütun başlığını tutarak, işaretçiyi diğer iki sütunun arasına götürürseniz, işaretçinin bulunduğu aralıkta koyu tonlu bir çizgi oluştuğunu görürsünüz; Mouse işaretçisini burada bırakırsanız, sütun tümüyle bu yere taşınmış olur. Bu suretle sütunları yan yana getirerek, arama ölçütü olacak değerleri de birbirine komşu yapmış olursunuz. Şimdi, Mouse işaretçisini ölçüt olacak verilerin en soldakinin veya en sağdakinin üzerine getirin (işaret simgesinin kalın ve içi boş artı işaretine döndüğüne dikkat edin) ve Mouse’un sol düğmesini tutun; ölçüt olacak değerlerin sonuncusuna kadar sürükleyin. Ölçüt olarak kullanacağınız bütün veriler seçilmiş olacaktır. Şimdi, ya sağ tıklayarak ve açılan menüden Seçilenlere Göre Süz maddesini seçerek, ya da Araç çubuğundan aynı adı taşıyan simgeyi tıklayarak, Access 2000’e çok ölçütlü süzgeç uygulattırabilirsiniz.
Seçme yoluyla süzme işlemini, alt alta kayıtların değerlerini ölçüt alarak da yapabilirsiniz. Bunun için, Mouse işaretçisini bir satırdaki bir değerin üzerine getirin ve işaret simgesi kalın ve içi boş artı işaretine döndüğünde, Mouse’un sol düğmesini tutarak ölçüt olarak kullanacağınız alttaki veya üstteki değerleri tarayın. Mouse’un düğmesini bıraktığınızda alt alta birden fazla değer seçilmiş olacaktır. Şimdi yine sağ tıklama veya Araç çubuğunda tıklama yoluyla Access 2000’e Seçme yoluyla süzme işlemini yaptırtabilirsiniz.
Kimi zaman süzme işinde kullanacağınız değerler böyle kolay bir şekilde seçme yoluyla belirtilemez ve daha ayrıntılı süzme ölçütleri uygulamak isteyebilirsiniz. Bunun için Form Süzgeci yöntemini kullanmanız gerekir. Bu aracı, Kayıtlar menüsünden önce Süz ve sonra Form Süzgeci maddesini seçerek açabilirsiniz. Form Süzgeci açıldığı anda açık olan tablonun yerini alır. Bu yeni tabloda, solda, altta birincil ölçütü belirteceğiniz Ara, ve ikincil, üçüncül ölçütler için bir çok “Veya” sekmesi göreceksiniz.
Süzme ölçütünü tanımlamaya Ara sekmesinden başlamak gerekir. Bu sekme seçili iken, tabloda sıralanan alan adlarının altındaki hücreyi tıklarsanız, sağda seçme okunun görüntülendiğini göreceksiniz. Bu oku tıklayarak, tablonuzda bu alana girişmiş tüm değerleri görebilirsiniz. Burada istediğiniz kadar seçim yapabilirsiniz. Yine öğrenci tablosu örneğine dönersek, cinsiyet sütunundan “Kadın,” birinci yarıyıl sınavı notları sütunundan “5,” ikinci yarıyıl sınavı notları sütunundan “3” değerlerini seçebilirsiniz. (Bu durumda tablonuzdaki bütün kadın öğrencilerden birinci sınavda 5 ikinci sınavda 3 alanlar seçilmiş olacaktır). “Veya” sekmelerini tıklayarak süzgecin kapsamını genişletmek mümkündür. Sözgelimi, sınıftaki kadın öğrencilerden birinci yarıyıl sınavında 5 “veya 4 veya 3 veya 2 veya 1 veya 0” alanları seçmek isteyebilirsiniz. Her “veya” ölçütünden sonra Form’un sol alt kenarına yeni bir Veya sekmesi eklendiğine dikkat edin.
Notlarınızı tam sayı olarak değil de kesirli olarak veriyorsanız, süzmenin amacı zayıf durumdaki öğrencileri belirlemek olduğu halde bu son yöntemde örneğin 4,5 alanları göremezsiniz. Bunu sağlamak için bütün not ihtimallerini kapsayan “Veya” ölçütleri doldurmak gerekir. Oysa süzme ölçütlerini seçerek değil yazarak verebilir ve standart karşılaştırma işlemcilerini kullanarak, bütün ihtimalleri kapsayabilirsiniz. Bunun için, örneğin Birinci Yarıyıl Sınav Notları sütununun boş hücresine “<=4,9” (tırnaklar olmadan) yazarsanız, Access 2000 notu 5’den aşağı bütün öğrencileri bulacaktır. Burada dikkat edilecek nokta önce mukayese işlemcisinin, sonra değerin yazılmasıdır. Access 2000, standart mukayese işlemcilerini kullanır:
> Büyük
< Küçük
= Eşit
<= Küçük veya eşit
>= Büyük veya eşit
<> Eşit değil
Ölçütlerinizi belirttikten sonra Araç çubuğundan Süzgeci Uygula simgesini tıklayarak süzülmüş kayıtlarınızı görebilir; işiniz bittiğinde süzgeci kaldır simgesini tıklayarak asıl tablonuza dönebilirsiniz.
Genellikle süzme işleminden sonra süzülmüş kayıtları içeren yeni tablonun bir alana göre sıralanması (örneğin öğrencilerin artan veya azalan not sırasına sokulması) gerekebilir. Süzülmüş kayıtları içeren geçici tablonun herhangi bir sütununu seçerek sıralama işlemi yaptırabilirsiniz. Fakat süzme ve sıralama işlemini, Kayıtlar menüsünden önce Süz, sonra Gelişmiş Süzme/Sıralama maddesini seçerek bir kerede yaptırtabilirsiniz. Bu maddeyi seçtiğiniz Access 2000, bu amaçla tasarlanmış özel bir Sorgu tasarım penceresi açacaktır. Bu teknikten yararlanmayı, Sorgu bölümünde ele alacağız.
“Access’te bir tabloya veri girmenin kestirme yolu, tabloyu açıp, en alt satırdan itibaren verileri yazmaktır!” dedik. Fakat yan yana yüzlerce sütunu bulunan bir tabloda bunu yapmak kolay olmaz. Tablonun Access penceresinin dışında kalan sütunlarını görüntüye getirmek için sürekli kaydırma çubuğunu tıklamak zor olabilir. Oysa Access bize veri girme ve düzenleme işini form yoluyla yapma imkanı veriyor. Form, bir tablonun bir kaydının içeriğini (veya boş bir kayıt satırını) bir çok kontrolle birlikte tek pencerede toplayabilen bir araçtır. Formun eni-boyu da Access penceresinden büyük olabilir; fakat formun biçimini belirlemek, alanların nerede ve ölçüde görüneceğine karar vermek imkanı vardır. Ayrıca formun üzerine veri girmeyi kolaylaştıran ve kaydın parçası olmayan yardım ifadeleri yazabilir, grafiklerle formu süsleyebilirsiniz. Formda, Sil, Kaydet ve benzeri komutlar içeren düğmeler olabilir.
Normal olarak formun her sayfası sadece bir kayıt içerir. Dolayısıyla dikkatinizi bir kayıt üzerinde toplayabilirsiniz. Oysa veritabanı penceresindeki tablo açıldığında görüntüye sığdırabildiği kadar kaydı sığdırır. Bu çoğu zaman bir kayıtla ilgili inceleme yapmayı zorlaştırır. Form, veri girmeyi mantıksal bir düzene bağlayabilir ve kolaylaştırabilir.
Access 2000, herhangi bir tabloyu anında forma çevirebilir. Form konusunu kavramak için en kestirme yol, açık veritabanında bir tabloyu açıp, Access’e bu tablodan otomatik form yapması talimatını vermektir. Bunun için Araç çubuğunda Yeni Nesne simgesini tıklamaktır. Bu araç, son yaptığınız işi hatırlar ve etiketinde bunu belirtir.
Access 2000, açık tablodaki bütün alanları, içine bilgi yazılacak kutular haline getirir; ve bunların önüne sütun başlığı olan alan adlarını etiket olarak koyar. Oluşturulan formda, kayıtlar arasında gezinmeyi bağlayacak kontroller, ve yeni kayıt için boş form edinme düğmeleri vardır. İşte yukarıdaki tablonun otomatik form haline getirilmiş görünümü:
Burada, bu formun başlığında ait olduğu tablonun adını görüyorsunuz. Aynı anda birden fazla tabloya veri girişi yapmakta kullandığınız form varsa, başlıkları anda hangi tabloya giriş yaptığınızı gösterir. Formun “kutuları” arasında klavyede sekme veya Enter tuşlarına basarak ilerleyebileceğiniz gibi, Mouse işaretçisini arzu ettiğiniz alanın içinde tıklayabilirsiniz. Geride kalan bir alana gitmek için klavyede üst karakter (büyük harf, Shift) tuşunu tutarken, Sekme tuşuna basın.
Formda, otomatik sayı olarak belirlenmiş alanlara yazı yazamazsınız; aynı şekilde Access’in değerini hesaplayarak bulduğu alanlara da klavyede değer giremezsiniz. Yeni kayıt için boş form açtığınızda otomatik sayı alanının içinde “(Otomatik Sayı)” ifadesini göreceksiniz. Bir formda imleç son kutuda iken klavyede Enter veya sekme tuşuna basarsanız veya imleç herhangi bir yerde iken Mouse işaretçisiyle başka bir kayda gitmek için gezinme düğmelerini veya yeni kayıt simgesini tıklarsanız, içinde bulunduğunuz kayıtta değişiklik yaptıysanız bu tabloya işlenir. (Bu işlem geri alınmaz.). Bir kaydın içinde iken klavyede üst karakter tuşunu tutarken Enter’a basarak, kayıtta yaptığınız değişikliği tabloya kaydedebilirsiniz. Bunu Kayıtlar menüsünden “Kaydı kaydet” maddesini seçerek de yapabilirsiniz.
Bir formda görüntülenen kaydı silmek de mümkündür. Bunun için araç çubuğundan Kayıt Sil simgesini tıklayabilirsiniz. Aynı işlem Düzen menüsünden Kayıt Sil maddesini seçerek de yapılabilir. Kayıt silme işlemi geri alınmaz. Bir formda kayıt silmeye çalıştığınız sırada bu işlem veritabanınında bilgi tutarlılığa açısından başka tablolarda ve sorgularda silme gerektirecekse, Access 2000 sizden onay isteyecektir.
Tablo görünümünde yapabildiğiniz bütün sıralama ve süzme işlemleri form görünümünde de yapılabilir.
Formun birinci görevi veri girmeyi kolaylaştırmak olduğu halde, bir kaydı içeren formu, yazdırabilirsiniz. Bunun için klavyede Ctrl tuşunu tutarken P tuşuna basmak veya Dosya menüsünden Yazdır maddesini seçmek yeter. Formun kağıt üzerinde nasıl görüneceğini Dosya menüsünde Baskı Önizleme maddesini seçerek, inceleyebilirsiniz.
Access’te yeni bir form oluşturmak için çeşitli yollar vardır. Bunlardan biri, Veritabanı penceresinde Nesneler listesinden Formlar’ı tıklamak ve açılacak Form nesneleri penceresinde ya tasarım görünümünde ya da Sihirbazı kullanarak form oluşturma yöntemini seçmektir. Form nesneleri penceresinin araç çubuğunda Yeni simgesini tıklayarak daha çok seçenek bulunan Yeni Form oluşturma aracını açabilirsiniz.
Bu seçeneklerden Tasarım Görünümü, seçeceğiniz bir tabloya dayanan ve sıfırdan form oluşturmanızı sağlayacak aracı çalıştırır. Form Sihirbazı ise, sizden form için gerekli seçmeleri yapmanızı ister ve formu kendisi tasarlar. Üç ayrı otomatik form oluşturma aracı ile Grafik Sihirbazı ve Excel-veri özet tablo oluşturma aracını da Yeni Form kutusunda bulacaksınız.
Access 2000’de tasarım görünümünde form oluşturmaya başlamadan önce, otomatik bir form oluşturup, bunu tasarım görünümünde açmak, form yapımı için daha eğitici olur. Bir tablo açıkken otomatik form oluşturun ve bu formu kapatın; Access onay istediğinde yeni form olarak kaydetmesine izin verin. Sonra Veritabanı penceresinde Formlar nesnesini seçin ve biraz önce kaydettiğiniz yeni formu seçip, araç çubuğundan Tasarla simgesini tıklayın. Access, formu tasarım görünümünde açarken yanına bir de Araç kutusu açacaktır.
Tasarım görünümündeki formun en belirgin özelliği zeminin kılavuz çizgilerle kaplı olmasıdır; formda yer alacak nesnelerin kılavuz çizgilerine yaslanması, nesnelerin görsel olarak düzgün ve hizalı görünmesini sağlar. Araç kutusundaki Nesne seçici (ok biçiminde) ile formdaki nesneleri seçer, ve Mouse düğmesini basılı tutarak,. form üzerinde yeni yere taşıyabilirsiniz. Denetim Sihirbazı denen işaretçiyi seçer ve forma yerleştirdiğiniz bir nesneyi ve Araç Kutusu’ndaki bir nesne simgesini tıkladıktan sonra formu tıklarsanız, bu nesnenin yapılandırılmasında size yardımcı olacak bir dizi diyalog kutusu açılır. Sihirbaz, seçtiğiniz denetim öğesinin özelliklerini belirlemek için sizden ve formun dayalı olduğu tablodan bilgiler derleyecektir.
Bir formda yer alabilecek denetim öğeleri, Araç Kutusu’nda sıralanmış bulunuyor. Bunları kısaca ele alalım:
Etiket Formdaki bir veri alanını niteleyen başlık olabilir; veya formu kullanarak veritabanına veri girecek olan kullanıcıya yol gösteren yardım metinleri içerebilir.
Metin kutusu Bu formun bağlı olduğu tablo veya tablolara veri girme noktalarıdır. Metin kutusunun özellikler penceresini açarak, bu kutuya girilecek bilgilerin veritabanında hangi tabloda hangi alana kayıt olarak işleneceğini belirlersiniz.
Seçenek grubu Formunuzda içinden seçme yapabileceğiniz ve bir alana bir değer atayan seçenekler içerir. Siz seçeneklerden hangisini seçerseniz, o seçeneğe vermiş olduğunuz değer tayin ettiğiniz bir alana yazılır.
Seçenek düğmesi Genellikle “kadın/erkek” gibi bir seçeneğin seçilmesini sağlar; seçeneğin değeri tayin ettiğiniz alana yazılır.
Değiştirme düğmesi Formda basılmış veya basılmamış düğme görünümleri arasında gider gelir ve tıklandığında içerdiği değeri ait olduğu alana yazdırır.
Onay kutusu İçerdiği değeri içine işareti konduğunda ait olduğu alana yazdıran bir denetimdir.
Açılan kutu Ya oluştururken sizin vereceğiniz sabit değerleri, ya da bir tablo veya sorgunun oluşturduğu değerleri içerir ve formu dolduran kişi tarafından seçilen değer, ait olduğu alanlar yazılır.
Liste kutusu İçindeki değerleri liste halinde gösterir; kullanıcının işaretlediği değer ait olduğu alana yazılır.
Komut düğmesi Access’in kullanıcıya sunduğu herhangi bir komutu yerine getirebilecek, düğme şeklindeki simge. Örneğin bir formu kaydetmek veya silmek için kullanılabilir.
Resim Formunuza işlevsel veya süsleme amacıyla resim koymanız için alan oluşturur.
İlişkisiz OLE Nesnesi Windows OLE-uyumlu herhangi bir programın dosyasını görüntülemenizi sağlayan pencere açar. Burada görüntelenecek başka program dosyasının veritabanınızla bir ilişkisi yoktur; form yoluyla bir kayıttan diğerine gidildiğinde bu nesre değişmez.
İlişkili OLE Nesnesi Windows OLE-uyumlu herhangi bir programın dosyasını görüntülemenizi sağlayan pencere açar. Burada görüntelenecek başka program dosyasının veritabanınızla ilişkisi kurulmuştur; bu alandaki nesne kayıttan kayıda gidildiğinde değişir.
Sayfa sonu Bir sayfadan fazla form oluşturmak istediğiniz zaman, formun kesilmesi ve yeni bir form sayfasının başlamasını sağlar.
Sekme denetimi Windows’un sekmeli denetim ve diyalog kutuları gibi formlar yapmanızı sağlar. Sekmenin açtığı alana diğer form öğelerini yerleştirebilirsiniz.
Alt form Bir form yoluyla kayıtlarınızda değişiklik yaparken, bağlı bir başka bir tablonun denetimini sağlayan ikinci bir form açılmasını sağlar. Böylece aynı anda bağlı tabloda da değişiklik yapabilirsiniz.
Çizgi ve dikdörtgen Formlarınızı kullanıl kolaylığı sağlamak amacıyla mantıksal gruplara ayırmasını sağlayan düz çizgi ve dikdörtgen çizimleri sağlar.
Yeni bir form tasarımına başladığınızda, araç kutusundaki denetim araçlarını formunuza yerleştirmiş olmanız, formda yapacağınız değişikliklerin herhangi bir tabloya işleneceği anlamına gelmez. Formun kayıt yapabilmesi için denetimlerin, mutlaka bir tablonun veya sorgunun alanlarına bağlanması gerekir. (Bağlı olmayan denetimler de olabilir. Onlara birazdan değineceğiz.) Form tasarımı sırasında Görünüm menüsünden alan listesi maddesini seçerseniz, formu oluşturmaya başladığınız sırada seçtiğiniz tablodaki bütün alanların listesini görebilirsiniz. Bu listedeki bir alanı Mouse işaretçisiyle tutarak, inşa halindeki formun üzerine bırakarak, kolayca bağlı denetimler elde etmek mümkündür. Bir diğer denetimle alan bağlama yolu ise denetimin Özellikler kutusunda Denetim Kaynağı satırına tablo ve alan adı yazmaktır.
Denetim öğelerinin özellikler kutusu, denetim sağ tıklanarak ve açılacak menüden Özellikler maddesi seçilerek görüntülenebilir. Ayrıca Form tasarımı penceresi açıkken Görünüm menüsünden Özellikler maddesini de seçebilirsiniz. Özellikler kutusu, seçili denetimin alabileceği bütün özellikleri içerir. Örneğin bir metin kutusunun tam 60 ayrı özelliği vardır. Özellikler, kutunun üzerindeki sekmelerle gruplara ayrılmıştır. Veri sekmesinde, denetim unsuru ile tablonun alanları arasında veri-bağı kurmanızı sağlayan özellikler vardır. Bu özelliklere Tümü sekmesinde de ulaşabilirsiniz. Veri ile bağlanabilecek bir denetimin Özellikler kutusunun da denetim kaynağı satırının sağında iki seçme simgesi vardır.
Bunlardan aşağı oku tıkladığınızda, formu oluşturmaya başladığınızda, bir tablo seçtiyseniz o tablonun alanlarını göreceksiniz. Form oluşturmaya başlarken bir tablo seçmediyseniz, bu oku tıkladığınızda karşınıza boş bir satır gelir. Özellikler kutusunun da denetim kaynağı satırının sağındaki ikinci seçme simgesi ise yan yana üç nokta şeklinde “deyim oluşturucusu” simgesidir. Bu simgeyi tıkladığınızda Deyim Oluşturucusu diyalog kutusu açılır.
Bu diyalog kutusunda, üstte deyim oluşturmaya ayrılan bol alan ile altta yan yana ve birbirine bağımlı üç pencere göreceksiniz: en solda veritabanında mevcut bütün tablolar, sorgular, formlar, raporlar, Access’in kullanılmaya hazır ve 16 grup halinde ayrılmış (aritmetik ortalamadan, tanjant hesaplamaya, tarih çevirmekten, sayı saymaya kadar) 188 işlevi, sabit değerler (boş, doğru, yanlış gibi), 20 adet matematik ve mantık işlem işaretleri (işleçleri, operatörleri), ve ortak değerler (sayfa numarası, toplam sayfa sayısı, o andaki tarih veya tarih/saat, ve o andaki kullanıcı adı) yer alır. Bu pencerede seçtiğiniz grubun alt grupları ortadakinde, ortada seçtiğiniz alt grubun içindekiler ise en sağdakinde görüntülenir.
Bir tablonun bir alanını, denetim unsuruna veri kaynağı yapmak için, en soldaki pencerede Tablolar satırını iki kere tıklayın; ortada veritabanının bütün tabloları listelendiğinde arzu ettiğiniz tabloyu iki kere tıklayın. En sağda tablonun bütün alanları listelenecektir. Arzu ettiğiniz alanı iki kere tıkladığınızda, alanın adı, tablonun adıyla birlikte, üstteki Deyim oluşturma alanına yazılacaktır. Tamam’ı tıkladığınızda bu “deyim,” denetimin Özellikler listesinde Denetim Kaynağı olarak gösterilmiş olur. Bu andan sonra formunuzun bu alanına yazacağınız veri, seçtiğiniz tabloda seçtiğiniz alana kaydedilir.
Form oluşturmaya başlarken bir tablo seçmiş olsanız bile, bir forma birden fazla tabloya bilgi kaydetme görevi verebilirsiniz. Bir form, veritabanı içindeki bütün tablolara bilgi kaydedebilir.
***
Böylece Access’te veritabanı oluşturma işinin birinci aşaması olan tablo tasarımını ve veri girmeyi, veri işlemin ilk adımı olan sıralama ve süzmeyi ve veritabanımızla daha kolay çalışma aracı olan formları tasarlamayı öğrendik. Şimdi, veri-işlemin gerektirdiği diğer işlere geçebiliriz. Bu işlerin başında tablolarımız arasında ilişki kurmak, Anahtarları belirlemek ve endeksleri (dizinleri) oluşturmak geliyor.