Mühendislikte Veri Tabanları Dersi Uygulamaları (MS-Access) İstanbul Teknik Üniversitesi, İnşaat Fakültesi, Geomatik Mühendisliği Bölümü Prof. Dr. Nebiye MUSAOĞLU Doç. Dr. Elif SERTEL Y. Doç. Dr. Şinasi KAYA Araş. Gör. Kaan KALKAN Araş. Gör. Fulya Başak Sarıyılmaz 2011 – 2012 Güz Yarıyılı VERİ TABANLARINA GİRİŞ TANIM: Veri tabanı, verilerin belirli bir amaca yönelik olarak düzenlenerek bir araya getirilmiş biçimidir. Microsoft access veritabanlarını yaratmak ve yönetmek için kullanılan güçlü bir programdır. Bilgiyi yapılandırmak ve görüntülemek için program içinde birçok menü vardır. Sistemin olanakları yardımıyla veriler; sorgulanabilir, süzülebilir, sıralanabilir, işlenebilir, raporlar hazırlanabilir ve daha pek çok işlem yerine getirilebilir. Veri tabanı, en geniş anlamıyla; birbiriyle ilişkili verilerin tekrara yer vermeden, çok amaçlı kullanımına olanak sağlayacak şekilde depolanması olarak tanımlanabilir. Veri tabanlarını yaratmayı ve kullanmayı sağlayan programlar topluluğuna “veri tabanı sistemi” ya da “veri tabanı yönetim sistemi – database management system (DBMS)” denir. Access’in veri tabanını nasıl analiz ettiği incelenecek olursa, 1 VERİ TABANI DOSYASI OLUŞTURMA Yeni veritabanı dosyasının oluşturulması için öncelikle dosyanın bilgisayarda hangi dizin altına ve ne isimle kaydedileceğine karar verilir ve kayıt işlemi ile dosya oluşturulur. Bu işlemden sonra, program kullanıcıya tablo oluşturma olanağını otomatik olarak sunar ve uygulayıcı kendi için uygun olan tablo oluşturma şeklini seçer. Tablo oluşturma yöntemi seçildikten sonra tablo ekranı açılır ve bu ekranda alan isimleri girilir ve uygun olan veri türleri seçilir 2 Alan adı alfabetik veya alfa nümerik ise veri türünün metin olarak seçilmesi gerekmektedir. Örneğin alan adı kısmına isim yazdığımızda veri türü olarak metin seçilmesi gibi. Metin seçildiğinde tablo ekranının sol alt köşesinde yer alan kısmın doldurulması gerekmektedir. İkinci alan adı olarak soyisim yazılır ve veri türü olarak metin seçilir. Üçüncü alan ismi olarak numara yazılır ve veri türü olarak sayı seçilir. Seçilen sayı verisine ait özelliğe uygun olarak alan boyutu kısmında mevcut olan türlerden biri seçilir. Alanlar yazıldıktan sonra tablo kapanırken tablo kayıt menüsü görülür. Değişiklikleri kaydetmek için evet tıklanır. Tablonun ismi yazılır (uygulama) ve değişiklikler kayıt edilir. 3 UYGULAMA Uygulama kapsamında bir Gayrimenkul değerleme firmasına altyapı oluşturabilecek bir veritabanı oluşturulacaktır. Bu amaçla Banka, Değerleyici, Malik, Tapu Bilgileri ve Taşınmaz adı altında 5 adet tablo oluşturulacaktır. Daha sonrasında ilişkiler kurularak sorgular oluşturulacaktır. 1- Aşağıda verilen tablo verilerini kullanarak tasarım görünümünde tablo oluşturun. 2-Tabloların alan veri türleri yukarıda konu anlatımında bahsedilen şartlara bağlı kalınarak oluşturulmalıdır. 3-Kayıt aşamasında tabloların üzerindeki isimler tablo ismi olarak kullanılacaktır. BANKA DEĞERLEYİCİ 4 MALİK TAPU_BİLGİLERİ 5 TAŞINMAZ 6 TABLOLAR ARASINDA İLİŞKİLERİN OLUŞTURULMASI Birden fazla tablo içeren uygulamalarda sorgulama yapabilmek için tabloların ilişkilendirilmesi gerekmektedir. Veritabanı içindeki tabloları belirli alanlarına göre birbirleriyle ilişkilendirmek olasıdır. Bu sayede, bir tablodaki kayıtlar işlenirken, o kayıt ile ilişkili olan diğer tablodaki kayıtlarla da işlemler yapılabilecektir. Tabloların ilişkilendirilmesi için; Aralarında ilişki kurulacak olan tabloların açık olmaması gerekmektedir. Veritabanı araçlar (DatabaseTools) menüsünden relationships (ilişkiler) tıklanır. Tabloyu göster penceresindeki tüm tablolar seçilir. Tablolar arasında ilişki kurmak için, iki tabloda da ortak olan alan ismi belirlenir. Bir tablo üzerinde alan ismi seçilir ve o alan sürüklenerek diğer tablodaki aynı alan üzerine bırakılır. 5. İlişkiler kurulurken aşağıdaki şekiller görülecektir. 1. 2. 3. 4. 7 SORGULAR Sorgu, veritabanı sistemi içinde yer alan tablolardaki verilerin isteğe uygun olarak seçilerek, belirli bir düzen içerisinde sunulmasıdır. Bir Sorgunun Yaratılması Sorgu yaratmak için Oluştur (Create) menüsü içerisindeki Sorgu (Query) seçenekleri kullanılır. Sorgu iki şekilde yaratılabilir. Tasarım görünümünde (Query Design) veya sihirbaz ile (Query Wızard), uygulamada detayların daha iyi anlaşılabilmesi için tasarım görünümünde sorgu yaratma seçeneği kullanılacaktır. Sorgu tasarımı seçildikten sonra, “Tabloyu göster (show table)” menüsünden sorgu yapmak için kullanılacak olan tablolar seçilir. Sorgu 1 – İTÜ’lü Değerleyiciler: Bu sorguyu oluşturmak için sadece “Degerleyici” tablosunun seçilmesi yeterli olacaktır. Degerleyici tablosundan DEG_ADI, DEG_SOYADI ve MEZUN_UNI sütünları sorgu tasarımına eklenir. Özel koşul olarak MEZUN_UNI özelliğine kriter olarak ‘ITU’ girilip sorgu isim verilerek kaydedilir. Sorgulama ile ilgili tanım yapıldıktan sonra sorgu saklanarak pencere kapatılır ve kaydedilir. Veri tabanı penceresinin sol kısmında, tablo isimlerin göründüğü bölüme yeni yaratılan sorguda eklenmiş olacaktır. Sorguyu çalıştırmak için bu sorgu üzerine gelinerek çift tıklanır. Sonuç sorgulama aşağıdaki gibi elde edilecektir. 8 Sorgu 2 – Esenler’deki Taşınmaz Bilgileri: Esenyurt ilçesindeki taşınmazların özelliklerini sorgulamak için Tapu_Bilgileri ve Tasinmaz tablolarını seçerek aşağıdaki sorguyu oluştururak çalıştırınız. Gerekli alanlar seçildikten sonra sorgu kayıt edilerek veri tabanına geri dönülür. Sorgu görüntülendiğinde aşağıdaki şekil elde edilecektir. 9 DEĞİŞİK SORGULAMA ÖRNEKLERİ Bir Ölçüte Uygun Kayıtların Seçilmesi Sorgu işlemlerinde tablo içinde yer alan bazı kayıtların, belirli bir ölçüte ya da bir başka deyişle bir koşula göre seçilerek görüntülenmesi söz konusu olabilir. Ölçütler tanımlanırken amacına uygun biçimde bazı özel işleçler kullanılabilir. Söz konusu işleçler aşağıdaki gibidir; > Büyük < Küçük <> Eşit değil <= Küçük veya eşit >= Büyük veya eşit Between…And Verilen iki değer arasında Sorgu 3 – İşbankası yada HSBC’den kredi alanlar: İşbankası yada HSBC banktan kredi alan Maliklerin bulunması için Banka ve Malik tablolarını seçerek aşağıdaki sorguyu oluşturunuz ve çalıştırınız. Sonuç sorgulama aşağıdaki gibi elde edilir. Sorgu 4 – 10 ve 20 Ekim arasında değerlemesi yapılan taşınmazlara ait bilgiler: Bu sorguda between operatörü kullanılarak 10 ile 20 Ekim arasında değerlemesi yapılan taşınmazlara ait bazı bilgiler 3 farklı tablodan sorgulanacaktır. “Degerleyici” , “Tasinmaz” ve “Banka” tablolarını kullanarak aşağıdaki sorguyu oluşturunuz ve çalıştırınız. Tasinmaz tablosunun DEGERLEME_TARIHI hücresine --- Between #10.10.2010# And #20.10.2010# yazmanız yeterli olacaktır. 10 Sorgunun sonucu aşağıdaki gibi olacaktır. Sorgu 5 – İlçe dışı çalışan değerleyici: Esenler’de ikamet eden 155 kodlu değerleyicinin başka ilçelere değelermeye gidip gitmediğini sorgulamak için “Degerleyici”, “Tasinmaz”, “Tapu_Bilgileri” ve “Malik” tablolarını kullanarak aşağıdaki sorguyu oluşturunuz ve çalıştırınız. Taşınmaz tablosunun ILCE hücresine ---Not “Esenler”--- yazmanı yeterli olacaktır. Sorgu 6 : Bir tablodaki sayısal alanların toplanması gerekebilir. Örneğin Garanti bankasının verdiği kredi toplamını bulmak için bir sorgu yapılmasına gerek duyulduğunda ilk olarak yeni sorgu için Banka tablosu seçilir. Sorgu içinde alan olarak KREDI_MIKTARI seçilerek, Tasarım (Design) 11 menüsü altında yer alan ∑ butonu seçilir. Bu butonun seçilmesiyle alt kısımda total (toplam isimli) yeni bir menu olaşacaktır. Menünün içinde bulunan çeşitli seçeneklerden sum seçilerek, toplam kredi miktarı bulunabilir. Bu durumda aşağıdaki sonuç elde edilecektir. Sorgu sonucu aşağıdaki gibi olacaktır. 12