TEMEL BİLGİ TEKNOLOJİSİ ÜNİTE-6 TABLO OLUŞTURMA UYGULAMASI Bir veri tabanı tasarımı yapılmadan önce ihtiyaç duyulan bilgiler belirlenmeli ve bu bilgiler gruplandırılarak tablo taslakları oluşturulmalıdır. Bu açıklamalar dikkate alındığında iki tablo oluşturmak gerekir. Örnekteki problem doğrultusunda tablo alanları aşağıdaki gibi olmalıdır. Birinci tablodaki alanlar; Personel numarası Personel adı Personel soyadı Personel adres Personel telefon Personel askerlik durumu İkinci tablodaki alanlar ise; Personel numarası Fiyat Satış tarihi Tablolarda yer alacak alanlar belli olduğuna göre artık tabloların oluşturulmasına geçilebilir. Bu tabloların oluşturulması aşağıda 4 adımda anlatılmıştır: 1. Boş veri tabanı açma 2. Tablo tasarımı 3. Tablo alanlarını ve veri türlerini tanımlamak 4. Alan özelliklerini belirleme UYGULAMA / ADIM 1 >>>>> VERİ TABANI AÇMA Bir veri tabanı projesine başlarken öncelikle boş bir veri tabanı dosyası açılmalıdır. Access programında boş bir veri tabanı oluşturmak için Dosya menüsünde bulunan Yeni sekmesindeki Boş veri tabanı seçeneği kullanılır. Resim 1. Dosya Menüsü - Yeni Sekmesi 1 UYGULAMA / ADIM 2 >>>>> TABLO TASARIMI Veri tabanında yeni bir tablo oluşturmak için Oluştur sekmesinde bulunan Tablolar grubundaki Tablo seçeneği kullanılır (Resim 2). Resim 2. Oluştur Sekmesi UYGULAMA / ADIM 3 >>>>> TABLO ALANLARINI VE VERİ TÜRLERİNİ TANIMLAMAK Alanlar, alan adı ve veri türü yazılarak tanımlanır. Veri türleri ve anlamları önceki bölümde açıklanmıştı. Alanlar istendiği gibi adlandırılabilir. Ancak alanda saklanacak bilgiyi hatırlatan bir isim verilmesi önerilir. Resim 3. Uygulama Örneği - Personel Tablosu Alan İsimleri Tanımlama UYGULAMA / ADIM 4 >>>>> ALAN ÖZELLİKLERİNİ BELİRLEME PersonelNo alanının özellikleri Resim 4’te görüldüğü gibi belirlenir. Veri türü Otomatik Sayı biçiminde belirlendiğinden, buna uygun bir şekilde Alan Boyutu “Uzun Tamsayı” olarak atanmıştır. Resim 4. Otomatik Sayı Veri Türü Özellikleri 2 Resim 5. Metin Veri Türü Özellikleri Alan özellikleri, veri türlerine göre değişiklik gösterebilir. Resim 5’te Metin veri türüne ait özelliklerin listesi yer almaktadır. Alan boyutu varsayılan olarak 255 olarak atanır. Alana girilecek değere göre alan boyutu değiştirilebilir. Uygulama örneğine göre “Adı” alanı için Alan Boyutu 30 karakter olarak belirlenmiştir. Gerekli özelliğinde “Hayır” seçeneği belirlenmiştir. Buna göre veri tabanına kayıt girilirken isim alanı boş bırakılabilir. Bunu engellemek için bu alan “Evet” yapılabilir. “Soyadı” alanı için de aynı ayarlamalar kullanılabilir. “Adres” alanı uzun metinler içerebildiği için Metin yerine Not olarak belirlenmişti. Not alanı uzun verilerin saklanması için kullanılır. “Telefon” alanı Metin olmasına karşın giriş maskesi yardımıyla biçimlendirilebilir. Bu ayarı özelleştirmek için giriş maskesi kısmında sağ tarafta beliren düğmeye tıkladıktan sonra açılan Giriş Maskesi Sihirbazı penceresi kullanılır. “Askerlik durumu” alanında veri türü olarak “Evet/Hayır” belirlenmişti. Özellikler kısmında biçim alanında varsayılan olarak biçim özelliği “Doğru/Yanlış” olarak görünür. Örneğe göre bu değerin “Evet/Hayır” olarak belirlenmesi daha anlamlıdır. Bu seçenek alanda saklanacak veriye göre “Doğru/Yanlış”, “Evet/Hayır” veya “Açık/Kapalı” şeklinde olabilir. Personel tablosundaki adımlar takip edilerek satış tablosu yukarıda görüldüğü gibi oluşturulabilir. “faturaNo” alanı birincil anahtar ve sayı, “fiyat” alanı para birimi, “satisTarihi” alanı da Tarih/Saat olarak belirlenmiştir. Resim 8. Uygulama Örneği Satış Tablosu “personelNo” alanı aslında hangi personelin satış yaptığını gösteren ve personel tablosuyla ilişkili olan bir alandır. Yani satış tablosundaki “personelNo” alanı ancak personel tablosundaki değerleri alabilir. “personelNo” alanının bu özel durumunu belirlemek için veri türü Arama Sihirbazı olarak belirlenmelidir. Veri türü olarak bu seçenek kullanıldığında Arama Sihirbazı penceresi görüntülenir. 3 Uygulama örneğinde satış tablosundaki “personelNo” değeri personel tablosundaki ”personelNo” alanından alınacağı için Arama Sihirbazı penceresinden birinci seçenek (arama alanı ögesinin değerleri başka bir tablo veya sorgudan almasını istiyorum) seçilir (Resim 9). Resim 9. Arama Sihirbazı Sonraki adımda görüntülenen ekranda verilerin alınacağı tablo ya da sorgu seçilir. Uygulama örneğine göre bu adımda personel tablosu seçilmiştir (Resim 10). Resim 10. Arama Sihirbazı Bu adımda tablonun hangi alanının ilişkilendirileceği belirlenir. Bunun için Kullanılabilir Alanlar bölümündeki alan adı tıklanır ve “>” işaretli düğme kullanılarak Seçili Alanlar bölümüne taşınır. Uygulama örneğine göre “personelNo” alanı seçilmiştir (Resim 11). 4 Resim 11. Arama Sihirbazı Sonrasında sıralama seçeneğinin belirleneceği pencere görüntülenir. Uygulama örneğine göre “personelNo” alanı seçilir (Resim 12). Resim 12. Arama Sihirbazı Sonraki ekranda satır genişliği belirleme penceresi görüntülenir. Bu pencereden işlem yapmaksızın “Son” düğmesi tıklanır. İlişkilerin Tanımlanması ve Ayarlanması Uygulama örneğine göre personel ve satış tabloları “personelNo” alanı üzerinden ilişkilidir. Aslında Arama Sihirbazı özelliği kullanıldığından bu ilişki oluşmuştur. Ancak bu ilişkilerin görülmesi ve kontrol edilmesi için İlişkiler bölümüne göz atılabilir. İlişkiler bölümünü görüntülemek için Veritabanı Araçları sekmesinde bulunan İlişkiler seçeneği kullanılır Resim 14. İlişkiler 5 Resim 15. İlişkileri Düzenle Tablolar arasındaki çizgi (Resim 14) ilişkiyi ifade eder. Çizgilerin uçlarının yer aldığı alanlar ilişkili alanları temsil eder. İlişki çizgisine çift tıklandığında İlişkileri Düzenle penceresi görüntülenir. personel tablosundaki kaydı silinen bir personelin satış tablosundaki bilgilerinin de silinmesi gerektiğini varsayalım. Buna göre İlişkileri Düzenle penceresindeki seçenekler seçilip Tamam düğmesi tıklanarak ilişki düzenleme işlemi tamamlanır. Tabloya doğrudan veri girişi yapmak için Veri Sayfası Görünümüne geçmek gerekir. Veri sayfası görünümüne geçmek için Giriş sekmesinde bulunan Görünümler grubundaki Görünüm açılır listesinden Veri Sayfası Görünümü seçeneği kullanılır. Veri sayfası görünümünde iken tablolara veri girilebilir, tablolardan veri silinebilir veya veriler tekrar organize edilebilir. Uygulama örneğinde “personelNo” alanı Otomatik Sayı veri türünde olduğu için bu alana veri girişi yapılamaz. Diğer alanlara ise fare ile tıklanarak veri girişi yapılır. Resim 17’den de görüldüğü gibi “telefon” alanına Giriş Maskesi uygulanmış, “askerlikDurumu” alanı da Evet/Hayır veri türü olarak belirlenmiştir. Resim 17. Uygulama Örneği Personel Tablosu Tablolar listesinden satış tablosu açılarak da veri girişi yapılabilir. Bu durumda “personelNo” alanının değeri personel tablosundaki değerle eşleştirilmelidir. Bu eşleştirme, açılan liste kutusuyla kolaylaştırılmıştır. Resim 20’de görüldüğü gibi yapılan kayıtta ikinci kaydın “personelNo” alanının değeri 2 olarak belirlenmiştir. Sorgular: Veritabanına bir sorgu eklemek için Oluştur sekmesinde bulunan Sorgular grubundaki bileşenler kullanılabilir. Tablo içindeki veriler üzerinde kısaltma, özetleme ve hesaplama yapabildiği için sorguların kullanılması tasarımı kolaylaştırır. Sorguların işlevi yandaki şekilde yansıtılmıştır. a- Doğrudan tabloya erişim b- Sorguya erişim c- Sorguların tablolara erişimi 6 Sorgular tablo ya da tablolardaki verileri kullanarak Form, Rapor ve diğer uygulamalara veri/işlem servisi yapan ara birimler olarak düşünülebilir. Sorgu Sihirbazını Kullanarak Sorgu Oluşturma Sorgu sihirbazı başlatıldığında Basit Sorgu Sihirbazı, Çapraz Sorgu Sihirbazı, Yinelenenleri Bulma Sorgusu Sihirbazı ve Eşleşmeyeni Bulma Sorgusu Sihirbazı olmak üzere 4 farklı sihirbaz seçeneği sunmaktadır. Bu bölümde basit sorgu sihirbazına detaylı olarak anlatılmıştır. Sorgu Sihirbazını Başlatma Sorgu sihirbazını başlatmak için Oluştur sekmesinde bulunan Sorgular grubundaki Sorgu Sihirbazı bileşeni kullanılır. Bu sihirbaz yardımıyla 3 adımda sorgu oluşturulur. SORGU OLUŞTURMA / ADIM 1 >>>>>> TABLO SEÇİMİ Öncelikle sorgulanacak tablo/sorgu seçilir. Bu seçimden sonra tablo/sorgudaki alanlar sol tarafta listelenir. SORGU OLUŞTURMA / ADIM 2 >>>>>> ALAN SEÇİMİ İstenilen alanlar ilgili tablodan veya sorgudan seçildikten sonra Seçili Alanlar bölümüne aktarılır ve İleri butonuna basılarak diğer adıma geçilir. SORGU OLUŞTURMA / ADIM 3 >>>>>> İSİMLENDİRME Bu adımda ise oluşturulan sorguya bir isim verilerek Son butonuna basılır; böylece sihirbaz ile sorgu oluşturma işlemi tamamlanır. Tasarım Görünümünde Sorgu Oluşturma Tasarım görünümünde bir sorgu oluşturmak için Oluştur sekmesinde bulunan Sorgular grubundan Sorgu Tasarımı bileşeni kullanılmalıdır. Sorgu Tasarımı bileşeninin kullanımı ile Sorgu Araçları bağlamsal sekmesi görüntülenir. Sorgu oluşturmak için öncelikle sorgular sayfasına özeti alınacak tablolar veya sorgular eklenmelidir. Bu işlem için Sorgu Araçları bağlamsal sekmesinde bulunan Sorgu Ayarları grubundan Tablo Göster bileşeni kullanılmalıdır. Görüntülenen Tabloyu Göster penceresinde veri tabanı içerisinde kaydedilmiş sorguların ve tabloların tamamı listelenir. Sorgular, Access içerisinde görsel olarak oluşturulmasına rağmen arka planda SQL (Structured Query Language) adı verilen bir sorgu dili kullanılır. Sorguya Ölçüt Vermek Kullanılan sorgularda verileri filtrelemek veya ekrana sadece istenen kayıtları getirmek için hazırlanan sorgulara belirli ölçütler (kriterler) uygulanır. Sorguya ölçüt eklemek için ilgili alanın ölçüt kısmına doğrudan metin ve sayı yazılabildiği gibi “>”, ”<”, ”=” gibi mantıksal operatörlerde yazılabilir. Sıralama Veri tabanlarında, tablolara doğrudan veya formlar aracılığıyla sürekli bir veri girişi yapılır. Bu veriler (kayıtlar) arttıkça kontrol edilemez hâle gelebilir. Uygulama örneğinde Metin veri türünde tanımlanan “adi” ve “soyadi” alanları Artan düzeninde sıralandığında tablodaki kayıtlar alfabetik olarak küçükten 7 büyüğe doğru sıralanacaktır. Access programında bir alandaki kayıtları sıralamak için Sorgu, Tasarım Görünümünde açılmalıdır. Parametrik Sorgu Oluşturmak Sorguya parametre atamak için ölçüt alanına “[Kriter Adı]” köşeli parantezler içerisinde bir metin yazılıp sorgu çalıştırıldığında Access programı Parametre Değerini Gir adında bir iletişim kutusu görüntüler. Access programında sorguları çalıştırmak için Sorgu Araçları bağlamsal sekmesinde bulunan Sorgu Türü grundaki Çalıştır bileşeni kullanılmalıdır. Birden Fazla Tablo Kullanarak Sorgu Oluşturmak Tablo zaten ilişkili ise sorgu esnasında bu ilişkiler korunur. Ancak sadece sorgularda geçerli olacak ilişkileri belirtmek gerekir. Bu işlem Access’te oldukça kolay bir şekilde yapılır. Sorgu Türleri Seçme Sorgusu Oluşturma Seçme sorgusu, sorgulama işlemlerinde en çok kullanılan sorgu türüdür. Seçme sorgusu ile tablodan istenilen alanlar gösterilebilir, belli alana göre filtreleme yapılabilir. Silme Sorgusu Oluşturma Silme sorgusu istenilen kaydın silinmesi için kullanılır. Örneğin B firmasının ürünleri arasından X maddesinin satışı durdurulmuştur. Güncelleştirme Sorgusu Oluşturma Güncelleştirme sorgusu istenilen herhangi bir alanının güncelleştirmesi için kullanılır. SORGU OLUŞTURMA UYGULAMASI Sorgular, genel olarak belli kriterlere uyan verileri göstermek, birden fazla tablodaki verileri birleştirmek, listelemek ve veriler üzerinde birtakım hesaplamalar yapmak için kullanılır. Tablo ve alanları incelendikten sonra sorgu uygulamaları yapılabilir. Bu uygulamalarda aşağıdaki işlemleri gerçekleştiren 3 sorgu tasarımı adım adım gösterilecektir. 1. Yapılan satışlardan 50 TL ve üzeri olanların listelenmesi 2. Ahmet adlı personelin yapmış olduğu satışlar 3. Satışlardan elde edilen %10’luk primlerin listelenmesi UYGULAMA / ADIM 1 >>>>>> YAPILAN SATIŞLARDAN 50 TL VE ÜZERİ OLANLARININ LİSTENENLENMESİ Müşteri tablosu bölüme eklenir. Görüntülenmesi istenen alanlar çift tıklanır. Bu örnekte var olan alanlar kullanılarak yapılmak istenen işleme göre ölçüt kullanmak yeterli olacaktır. satisTutarı 50 TL üzerindeki kayıtlar görüntüleneceği için ölçüt kısmına “>50” yazılır. Tasarım sekmesinden Çalıştır seçeneği kullanılarak kayıtlara ulaşılır. 8 1. Veri tabanı tablosunda öğrenci numaralarının olduğu alanda öğrencilere aynı numaranın verilmesini önlemek için aşağıdaki alan özelliklerinden hangisi yapılmalıdır? a. Sıralı Evet b. Gerekli Evet c. Geçerlilik Kuralı Evet d. Geçerlilik Metni Evet e. Sıfır Uzunluk İzni Evet 2. Yandaki tabloda “Dogum Tarihi” alanını önceden tanımlanmış bir veri türü şeklinde ayarlamak için aşağıdaki alan özelliklerinden hangisi kullanılmalıdır? a. Arama Sihirbazı b. Geçerlilik Kuralı c. Giriş Maskesi d. Varsayılan Değer e. Biçim 3. Yandaki tabloda "Askerlik durumu" alanını resimde gösterildiği gibi ayarlamak için hangi veri türü kullanılmalıdır? a. Metin b. Not c. OLE Nesnesi d. Evet/Hayır e. Ek 4. Tablolardaki kayıtlardan belirli kriterlere göre işlenen bilgileri göstermeye olanak tanıyan veritabanı nesnesi aşağıdakilerden hangisidir? a. Form b. Sorgu c. Rapor d. Tablo e. Makro 5. Yandaki tabloda sadece askerliğini yapmış olan kişileri görüntülemek için aşağıdaki sorgu türlerinden hangisi kullanılmalıdır? a. Silme Sorgusu b. Güncelleştirme Sorgusu c. Çapraz Sorgu d. Basit Sorgu e. Seçme Sorgusu 6. Sorgu oluşturmak için aşağıdaki adımlardan hangisi izlenmelidir? a. Tablo Seçimi İsimlendirme Alan Seçimi b. Alan Seçimi İsimlendirme Tablo Seçimi c. Tablo Seçimi Alan Seçimi İsimlendirme d. Alan Seçimi Tablo Seçimi İsimlendirme e. İsimlendirme Tablo Seçimi Alan Seçimi 9 7. I. Sorgular, tablodaki verileri yedekler. II. Sorgu ölçütleri, sayısal değerler ve metin ifadeleri içerebilir. III. Sorgular yardımıyla tablolar üzerinde veri ekleme ve değiştirme işlemleri yapılabilir. Veri tabanlarına ilişkin yukarıdaki ifadelerden hangisi ya da hangileri doğrudur? a. Yalnız I b. Yalnız II c. I ve II d. II ve III e. I, II ve III 8. Yandaki resimde “Satistutari” ölçütü ile aşağıdaki işlemlerden hangisi ya da hangileri yapılır? I. Sorguda satış tutarı alanı yer alır. II. Satış tutarı alanı gizlenmemiştir. III. Satış tutarlarının tamam 50’den büyük olacak şekilde güncellenmiştir. a. Yalnız I d. II ve III b. Yalnız II c. I ve II e. I, II ve III 9. Tablonun bir alanındaki veri, bir başka tablodan geldiğinde ya da bu alan için bir başka tablodaki veri kullanıldığında veri türü olarak aşağıdakilerden hangisi seçilmelidir? a. Hesaplanmış b. Arama Sihirbazı c. Otomatik Sayı d. Ole Nesnesi e. Köprü 10. Sorgularda farklı tablolardan veri çekmek için öncelikle hangi işlem yapılmalıdır? a. İlişkilendirme c. Ölçüt belirleme b. Birincil anahtar ekleme d. Form oluşturma e. Hesaplama alanı ekleme 1.A, 2.C, 3.D, 4.B, 5.E, 6.C, 7.D, 8.C, 9.B, 10.A REYHAN TUNA 10