30.09.2010 BİLGİSAYAR III DERS NOTLARI II. HAFTA TABLOLAR İLE ÇALIŞMAK Doç. Dr. Sevinç GÜLSEÇEN Araş. Gör Elif KARTAL KARATAŞ
TABLOLAR İLE ÇALIŞMAK 1 Bir tablo yani günlük hayattaki liste kavramı, satırlar ve sütunlardan oluşmaktadır. İlkokul sınıf defterindeki öğrenci listesinden günlük hayatta karşılaştığımız tüm listelerin karşılığı veritabanında birer tablodur. Teknik anlamda ise; satır ve sütunlardan oluşan, verileri saklayan, veritabanının en temel nesnesidir. Microsoft Office Access 2007 de diğer tüm veritabanları gibi veriyi tablolarda tutar 2. Satır (Row): Bir tabloda yer alan her bir kayıt bir satıra karşılık gelir. Sütun (Column): Tablolar dikey sütunların yan yana gelmesi ile meydana gelmiştir. Aşağıda, ilk sütunda id, ikinci sütunda Ad, diğerinde Soyad vs. yer almaktadır. Field (Alan) kavramı, yapılandırılmış bilginin her bir kısmını saklanmak üzere yapılan tanımlamadır. Bir alanın uzunluğu ne kadar olacak, harf girilebiliyorsa en fazla kaç harf girilebilecek, rakam girilebiliyorsa en fazla kaç basamaklı olabilir türünden soruları yanıtlamak için Veri Tabanı Yönetim Sistemi olduğu gibi MS Office Access 2007 de bir alan için veri tipi belirlememizi ister. Alan 1 Alan 2 Alan 3 Alan 4 Alan 5 (Otomatik Sayı) id (Metin) Ad (Metin) Soyad (Sayı) Yaş (Metin) Telefon 1 Ajda Pekkan 63 00000000001 2 Tanju Okan 71 00000000000 Her bir alan, yapılandırılmış verinin bir birimini tutmak üzere tanımlanır. Her bir sütunun adı ile birlikte diğer bilgilerinin (en fazla kaç birimlik bilgi bu hücrede saklanabilecek, ne tür bilgi saklanacak vs.) ortaya koyduğu tanıma alan denir. Record (Kayıt): Yapılandırılmış verilerden her birine kayıt denir. Yani alan bilgileri ile birlikte her bir satır bir kayıttır. Satır, sütun, Kayıt kavramlarını aşağıdaki örnekte inceleyebiliriz. Tablo 1: Aşağıdaki tabloda alan, satır, sütun ve kayıt bilgilerini görebiliriz. (Otomatik Sayı) id (Metin) Ad (Metin) Soyad (Sayı) Yaş (Metin) Telefon 1. Kayıt 1. Satır 2. Satır 1 Ajda Pekkan 63 00000000001 2 Tanju Okan 71 00000000000 2. Kayıt 1. Sütun 2. Sütun 3. Sütun 4. Sütun 5. Sütun 1 http://www.dealing-with-data.net/create-access-table.html, (Son Ziyaret Tarihi: 13.10.2009) 2 Belirtilen paragraf, Satır, Sütun, Field ve Record tanımlamaları Gözüdeli, Y., 2009. Yazılımcılar için Sql Server 2008 ve Veritabanı Programlama, Seçkin Yayıncılık, Ankara, syf. 45-46 dan alınmıştır.
Veri Tipleri 3 : ASTRONOMİ VE UZAY BİLİMLERİ BÖLÜMÜ BİLGİSAYAR III DERSİ- HAFTA 2 (30.09.2010) Veri tipleri veritabanı tablo alanlarına girilecek olan veriler ya da bilgiler için tablo alanlarının tutacağı değer tipini belirler. Office Access 2007 10 farklı veri türü sağlar (Access'in önceki sürümleri dokuz tür sağlamaktaydı) ve bu türlerin her birinin belirli bir amacı vardır. Aşağıdaki tabloda veri türleri listelenmekte, her birinin depoladığı veri türü gösterilmekte ve her tür için söz konusu sınırlamalar açıklanmaktadır. Veri Tipi Kullanımı Sınırlamalar/Kısıtlamalar Metin (Text) Not (Memo) Alfa sayısal veri 4 ler (metin ve sayılar) Alfa sayısal veriler (metin ve sayılar) En fazla 255 karakter depolar. Alanı programla dolduracaksanız en çok 2GB veri depolar (tüm Access veritabanlarındaki boyut sınırıdır). 2GB veri eklendiğinde veritabanınızın yavaş çalışacağını unutmayın. Verileri el ile girecekseniz, tablo alanında ve alanla bağlantılı kıldığınız tüm denetimlerde en fazla 65.535 karakter girebilir ve görüntüleyebilirsiniz. Office Access 2007 dosya biçiminde veritabanı oluşturduğunuzda, Not alanları zengin metin düzenlemeyi de destekler. Sayı (Number) Tarih/Saat (Date/Time) Sayısal veriler Tarih ve saatler Sayı alanları, alanın içerebileceği değerin boyutunu belirleyen bir Alan Boyutu ayarı kullanır. Alan boyutunu 1, 2, 4, 8 veya 16 bayt olarak ayarlayabilirsiniz. Access tüm tarihleri 8 baytlık çift duyarlıklı tamsayılar halinde depolar. Veri Tipi Kullanımı Sınırlamalar/Kısıtlamalar Para Birimi (Currency) Otomatik Sayı (Auto Number) Parasal veriler Yeni kayıt oluşturduğunuz zaman Access tarafından oluşturulan Verileri dört ondalık basamak duyarlığıyla 8 baytlık sayılar olarak depolar. Parasal veriler depolamak isterseniz ve Access'in değerleri yuvarlamasını istemezseniz, bu veri türünü kullanın. Verileri 4 baytlık değerler halinde depolar; genellikle birincil anahtarlarda kullanılır. 3 http://office.microsoft.com/tr-tr/access/ha100964501055.aspx, (Son Ziyaret Tarihi: 13.10.2009) 4 Alfasayısal Veri (alphanumeric data): Harfleri, sayıları ve noktalama işaretlerini içerir. Sayısal veriler gibi, alfasayısal veriler matematiksel olarak toplanamaz (http://tychousa3.umuc.edu/guide16/glossary/a.html ).
Veri Tipi Kullanımı Sınırlamalar/Kısıtlamalar benzersiz değerler Evet/Hayır (Yes/No) OLE Nesnesi (OLE Object) Boole (doğru veya yanlış) Office ve Windows tabanlı programlardan gelen görüntü, belge, grafik ve diğer nesneler Access tüm Evet değerleri için -1 ve tüm Hayır değerleri için 0 kullanır. En çok 2GB veri depolar (tüm Access veritabanları için boyut sınırıdır). 2GB veri eklendiğinde veritabanınızın yavaş çalışacağını unutmayın. OLE Nesnesi alanları özgün belgenin veya başka nesnenin bit eşlem görüntülerini oluşturur ve veritabanınızdaki tablo alanlarında ve form veya rapor denetimlerinde bu bit eşlemi görüntüler. Access'in bu görüntüleri işlemesi için, veritabanınızı çalıştıran bilgisayarda kayıtlı bir OLE sunucunuz (bu dosya türünü destekleyen bir program) olması gerekir. Belirli bir dosya türü için kayıtlı OLE sunucunuz yoksa, Access bozuk görüntü simgesi görüntüler. Bu, başta JPEG görüntüler olmak üzere bazı görüntü türleri için bilinen bir sorundur. Kural olarak,.accdb dosyalarınız için, OLE Nesnesi alanları değil, Ek alanları kullanmalısınız. Ek alanları depolama alanını daha verimli kullanır ve kayıtlı OLE sunucuları bulundurma zorunluluğu yoktur. Köprü Ek Web adresleri Desteklenen türde tüm dosyalar En çok 1 gigabayt veri depolar. Web sitelerine bağlantıları, bir intranet veya Yerel Ağ'da (LAN) bulunan siteleri ve dosyaları ve bilgisayarınızda bulunan siteleri veya dosyaları depolayabilirsiniz. Office Access 2007.accdb dosyalarında yenidir. E-posta iletilerine dosya eklemeye çok benzer şekilde, veritabanınızdaki kayıtlara görüntü, veri sayfası dosyası, belge, grafik ve desteklenen diğer türlerde dosyalar ekleyebilirsiniz. Veritabanı tasarımcısının Ek alanını ne şekilde ayarladığına bağlı olarak, eklenen dosyaları ayrıca görüntüleyebilir ve düzenleyebilirsiniz. Ek alanları OLE Nesnesi alanlarına göre çok daha fazla esneklik sağlar ve özgün dosyanın bit eşlem görüntüsünü üretmedikleri için depolama alanını daha verimli kullanırlar.
Alan Özellikleri 5 : ASTRONOMİ VE UZAY BİLİMLERİ BÖLÜMÜ BİLGİSAYAR III DERSİ- HAFTA 2 (30.09.2010) Bu alan özelliğini Bu veri türü ile kullanın işlemini yapın Alan Boyutu (Field Size) Metin Sayı Otomatik Sayı Metin, Sayı veya Otomatik Sayı veri türünde depolanan verilerin boyut üst sınırını ayarlayın. Not: En iyi performansı elde etmek için her zaman yeterli olacak en küçük Alan Boyutu'nu belirtin. Biçim (Format) Metin Not Sayı Tarih/Saat Para Birimi Otomatik Sayı Evet/Hayır Köprü Görüntülenen veya yazdırılan alanın varsayılan görünümünü özelleştirin. Ondalık Basamaklar (Decimal Places) Sayı Para Birimi Sayılar görüntülenirken kullanılacak ondalık basamak sayısını belirtin. Yeni Değerler Otomatik Sayı Yeni kayıt eklenirken Otomatik Sayı alanının artımlı mı olacağını yoksa rasgele bir değer mi alacağını ayarlayın. Giriş Maskesi (Input Type) Metin Sayı Tarih/Saat Para Birimi Veri girişinde yol gösterecek düzenleme karakterlerini görüntüleyin. Resim Yazısı (Caption) Tüm veri türleri Formlar, raporlar ve sorgular için etiketlerde varsayılan olarak görüntülenecek metni ayarlayın. Varsayılan Değer (Default Value) Metin Not Sayı Tarih/Saat Para Birimi Evet/Hayır Yeni kayıt oluşturulurken belirtilen değeri alana otomatik olarak atayın. 5 http://office.microsoft.com/tr-tr/access/ha102319531055.aspx, (Son Ziyaret Tarihi: 13.10.2009)
Bu alan özelliğini Bu veri türü ile kullanın işlemini yapın Köprü Geçerlilik Kuralı (Validation Rule) Metin Not Sayı Tarih/Saat Para Birimi Evet/Hayır Köprü Bu alandaki değerin eklenmesi veya değiştirilmesi için doğru olması gereken ifadeyi sağlayın. Geçerlilik Metni (Validation Text) Metin Not Sayı Tarih/Saat Para Birimi Evet/Hayır Köprü Bu alana girilen değer Geçerlilik Kuralı kutusundaki ifadeye göre yanlış olduğunda gösterilecek metni girin. Gerekli (Required) Otomatik Sayı dışındaki tüm veri türleri Her kayıtta bu alanın bir değer içermesini gerektirir. Sıfır Uzunluk İzni (Allow Zero Length) Metin Not Köprü Metin veya Not alanına sıfır uzunlukta bir dize ("") girilmesine izin verir (Evet olarak ayarlandığında). Sıralı (Indexed) Metin Not Sayı Tarih/Saat Para Birimi Otomatik Sayı Evet/Hayır Köprü Dizin oluşturarak ve kullanarak bu alandaki verilere okuma erişimini hızlandırın. Not Not ve Köprü alanları, alanın yalnızca ilk 255 karakteri için oluşturulan dizinleri destekler. Önemli Alanda dizinin olması ekleme, silme ve güncelleştirme işlemlerinin uzun sürmesine neden olur; çünkü dizinin yapılan değişiklikleri yansıtacak şekilde güncelleştirilmesi gerekir.
Bu alan özelliğini Bu veri türü ile kullanın işlemini yapın Unicode Sıkıştırma (Unicode Compression) Metin Not Köprü Depolanan karakter sayısı 4096'dan az olduğunda bu alandaki verileri sıkıştırın (Metin alanı için her zaman doğru). Depolanan karakter sayısı 4096'dan fazlaysa hiçbir etkisi olmaz. IME Modu (IME Mode) Metin Not Tarih/Saat Köprü Windows'un Doğu Asya sürümlerinde karakter dönüştürmelerini denetleyin. IME Tümce Modu (IME Sentence Mode) Metin Not Tarih/Saat Köprü Windows'un Doğu Asya sürümlerinde tümce dönüştürmelerini denetleyin. Akıllı Etiketler (Smart Tags) Metin Not Sayı Tarih/Saat Para Birimi Otomatik Sayı Köprü Yalnızca Ekle Not Köprü Alana akıllı etiket (akıllı etiketler: Tanınmış ve belirli bir türe ait olacak şekilde etiketlenmiş veriler. Örneğin, bir kişi adı veya son kullanılan Microsoft Outlook e-posta alıcısı tanınabilen ve bir akıllı etiketle etiketlendirilebilen bir veri türüdür.) ekleyin. Bu özelliği Evet değerine ayarlayarak alanın değer geçmişini izleyin. Uyarı: Bu özelliğin değeri Hayır olarak değiştirildiğinde alanın değer geçmişi silinir. Metin biçimleri Not Alan verilerini HTML olarak depolamak ve zengin metin biçimlendirmesine izin vermek için Zengin Metin'i seçin. Salt metin depolamak için Düz Metin'i seçin.
Bu alan özelliğini Bu veri türü ile kullanın işlemini yapın Metin Hizala Ek dışındaki tüm veri türleri Denetimin içindeki metnin varsayılan hizalamasını belirtin. Tarih Seçiciyi Göster Tarih/Saat Kullanıcılar alanın değerini düzenlerken Access'in tarih seçici (takvim denetimi) görüntüleyip görüntülemeyeceğini belirtin. Not Tarih/Saat alanı için bir giriş maskesi kullanırsanız, bu özelliği nasıl ayarladığınıza bakılmaksızın Veri Seçici denetimi kullanılamaz. Tasarım Görünümü (Design View) nde Alanlar Yaratmak: telefonrehberi isimli veritabanında rehber isminde bir tablo yaratalım. Tasarım görünümünde olalım. Yaratacağımız ilk alan id alanı olmalıdır. id her kayıt için bir tek olan referans sayısını gösterir. Veritabanına kayıt girdikçe genelde bu referans sayısının otomatik artmasını isteriz. Bu nedenle id alan adının veri tipi Otomatik Sayı olarak ayarlanmalıdır. Alan adları ad, soyad ve telefon olarak belirlenen alanların veri tiplerini Metin, alan adı yaş olarak belirlenen alanların veri tipini ise Sayı olarak seçebiliriz.
Tabloyu bu hali ile kaydetmeden önce tablo için Birincil Anahtar (Primary Key) 6 seçilmelidir. Burada Birincil Anahtar olarak id satırına tıklayarak id alanını Birincil Anahtar seçiyoruz. Verisayfası Görünümü (Datasheet View) nde Veri Girişi: Tablo kaydedildikten sonra Verisayfası Görünümünde veri girişi yapılabilir. Yani ver tabanına yeni kayıtlar eklenebilir. Veri girişi yapmak istediğiniz alanı seçip veri girişi yapmanız yeterli olacaktır. Verilen örnekte id alanına veri girşi yapılması, id alanı veri tipinin Otomatik Sayı olması sebebiyle gerekmez. 6 Birincil Anahtar (Primary Key) daha sonra detaylı bir şekilde ele alınacak olup kısaca; veritabanında tablolar arasında ilişkiler kurarken, veritabanından yapılan sorgularda bize yardımcı olmaktadır.
Verilerin Düzenlenmesi: ASTRONOMİ VE UZAY BİLİMLERİ BÖLÜMÜ BİLGİSAYAR III DERSİ- HAFTA 2 (30.09.2010) Kayıtlarımızdan bir veya birkaçı için girilen verileri düzenlemek de veri girişi yapmak kadar kolaydır. İsteğimiz veri seçip silebiliriz ya da yeni bir değer girebiliriz. Bu sırada hangi kayıt ile uğraşıyorsak o satırın en solunda bir kalem işareti belirir. Bu, o satırda bir düzenleme yapılmakta olduğunu gösterir. Bu satırdan ayrılır ayrılmaz kalem işareti kaybolur ve değişiklikler otomatik olarak kaydedilir. Siz bir alanı düzenlemeyi bitirdiğinizde, alanın ait olduğu tüm kayıt otomatik olarak kaydedilir. Verilerin Filtrelenmesi ve Sıralanması: bölmesi ile filtreye ulaşabiliriz. Microsoft Office Access 2007 deki filtre verilen ölçüt ile uyuşmayan verilerin ekrana gelmesini engellenmektedir. Filtre ve sıralama seçenekleri ile istediğimiz kayıtlar ile daha verimli çalışabilmekteyiz. A dan Z ye sıralama için (sort in ascending order) Z dan A ye sıralama için (sort in descending order) Sıralamayı kaldırır Tablolarda Arama Yapmak: bölümü ile erişebiliriz. Filtre ve Sıralama gibi bu seçenek de bizlere, istenen veriye kolaylıkla ulaşmamızı sağlar. Verilerin Hesaplanması: ikonu yardımı ile kolaylıkla gerçekleştirebiliriz. Yalnızca üzerinde işlem yapmak istediğimiz dikey sütunu seçmemiz yeterlidir. Toplamlar (Totals) sekmesi ile toplama işlemi, ortalama - varyans - standart sapma hesabı, en yüksek değer (maximum value) en düşük değer (minimum value) bulma, kaç adet kayıt bulunduğunun hesaplanması işlemleri gerçekleştirilebilir.
MICROSOFT OFFICE ACCESS 2007 DE YENİ BİR VERİ TABANI OLUŞTURMAK 1. Microsoft Office Access 2007 yi açınız. 2. Boş Veri Tabanı na tıklayınız.
3. Sağ alt köşedeki klasör ikonuna tıklayınız. 4. Yeni Veri Tabanı Dosyası penceresi açıldığında oluşturacağınız veritabanı dosyası için File Name (dosya ismi) kısmını istediğiniz gibi değiştirebilirsiniz. Save as Type (Farklı Kaydetme Tipi) bölümünün Microsoft Office Access 2007 Veritabanları olmasına dikkat ediniz.
5. Veri tabanı dosyası ismini dilediğiniz gibi değiştirdikten sonra Tamam ı tıklayabilirsiniz. 6. Karşınıza gelen ekranda sağ alt köşede bir önceki adımda vermiş olduğunuz veri tabanı dosyası ismini görebilirsiniz. Ayrıca veri tabanı dosyası isminden sonra gelen.accdb (access database kelimesinin kısa hali olarak düşüneiliriz) uzantısına dikkat edelim. Burada artık Oluştur a tıklayarak veri tabanı dosyamızı oluşturabiliriz.
7. Artık ilkveritabani isimli veritabanınız karşınıza gelecektir. MICROSOFT OFFICE ACCESS 2007 DE YENİ BİR TABLO OLUŞTURMAK 1. Microsoft Office Access 2007 yi açın.
2. Microsoft Office Düğmesini kullanarak daha önceden yarattığımız veritabanı dosyasını bulup ya da En Son Veritabanını Aç bölümünden açmak istediğiniz veritabanı dosyası ismini seçerek tablo yaratmak istediğiniz veritabanını yeniden açabiliriz. Önemli Not:.accdb veya.accde dosyasını Office Access 2007 uygulamasında açtığınızda, Access veritabanının konumunu Güven Merkezi'ne gönderir. Konum güvenilirse, veritabanı tam işlevsellikle çalışır. Access'in önceki bir sürümünden veritabanını Office Access 2007 uygulamasında açarsanız, Access konumu ve (varsa) veritabanının sahip olduğu dijital imza hakkındaki ayrıntıları gönderir. Güven Merkezi, veritabanının güvenirliğini değerlendirmek için bu "kanıtı" denetler ve ardından veritabanını nasıl açacağını Access'e bildirir. Access ya veritabanını devre dışı bırakır ya da tam işlevsellikle açar. Güven Merkezi herhangi bir içeriği devre dışı bırakırsa, veritabanı açıldığında ya da şeklinde İleti Çubuğu görünür. Devre dışı bırakılan herhangi bir içeriği etkinleştirmek için, Options (Seçenekler) ı tıklatır ve ardından görünen iletişim kutusunda seçenekleri belirlersiniz. Access, devre dışı bırakılan içeriği etkinleştirir ve veritabanı tam işlevsellikle yeniden açılır. Aksi takdirde, devre dışı bırakılan bileşenler çalışmaz. 7 7 http://office.microsoft.com/tr-tr/access/ha012301871055.aspx, (Son Erişim Tarihi: 06.10.2009)
3. Datasheet Sekmesine tıklayınız. 4. View şeridine tıklayınız. 5. Menü karşınıza gelince Design View Sekmesini seçin. Bu sekmeyi seçtikten sonra tabloyu hangi isim ile veritabanına kaydetmek istediğiniz size sorulacaktır. İstediğiniz tablo ismini yazdıktan sonra Tamam ı tıklayarak tablonuzu veritabanına kaydedebilirsiniz.
KAYNAKLAR ASTRONOMİ VE UZAY BİLİMLERİ BÖLÜMÜ BİLGİSAYAR III DERSİ- HAFTA 2 (30.09.2010) http://www.dealing-with-data.net/create-access-table.html, (Son Ziyaret Tarihi: 13.10.2009) Gözüdeli, Y., 2009. Yazılımcılar için Sql Server 2008 ve Veritabanı Programlama, Seçkin Yayıncılık, Ankara, syf. 45-46 http://office.microsoft.com/tr-tr/access/ha100964501055.aspx, (Son Ziyaret Tarihi: 13.10.2009) http://tychousa3.umuc.edu/guide16/glossary/a.html, (Son Ziyaret Tarihi: 13.10.2009) http://office.microsoft.com/tr-tr/access/ha102319531055.aspx, (Son Ziyaret Tarihi: 13.10.2009)