23.09.2010 BİLGİSAYAR III DERS NOTLARI I. HAFTA GENEL KAVRAMLAR Doç. Dr. Sevinç GÜLSEÇEN Araş. Gör Elif KARTAL KARATAŞ
VERİ TABANI SİSTEMİ 1 Bilgisayarımızda ham bilgileri (veri, data) belirli bir amaca yönelik, düzenli biçimde kütük (file) halinde bir dış bellek ünitesinde (disk, disket, CD, taşınabilir bellek, vb) saklayabilmekteyiz. Çoklu işlem yapan ve çok kullanıcıya çalışma imkânı sunan bilgisayarlarda bir ya da birkaç dosya yetmemektedir, bu durumda veritabanı yönetim sistemi (database management system) kurulmaktadır. Verinin dosyalarda yinelenmesi ve tutarsızlığı, Veri girişindeki güçlükler, Eş zamanlı erişimdeki tutarsızlıklar, Güvenlik sorunları, Bütünleştirme sorunları da ancak veritabanı yönetim sistemi oluşturmakla aşılabilmektedir. Veritabanı sistemi; veritabanı, veritabanı yönetim sistemi, diğer yazılımlar, donanım ve kullanıcılar olmak üzere 5 temel unsurdan oluşur. 1. Veritabanı Veritabanı (database), bir sistem halinde düzenlenmiş veri topluluğudur. Belirli bir ya da birden çok amaca yönelik bilgi işlem sistemi için gerekli veriyi, kolay ulaşılabilir ve denetlenebilir şekilde düzenli olarak bir dış bellekte toplamak yolu ile oluşturulur. Bu şekilde gerektiğinde hemen erişilebilen bir veri bankası kurulmakta ve veri tekrarları da önlenmiş bulunmaktadır. Bir diğer deyişle veritabanı; bir konu ya da örgüte ilişkin verilerden oluşan ve genellikle bir veritabanı sistemi aracılığıyla bir bütün olarak yaşatılan veri kümeleri topluluğudur 2. Sistem kullanıcılarının hepsi, aynı veritabanından kendi uygulama programı için gerekli veriye her an erişebilmelidir. Veritabanı uyulama programından bağımsız olarak düzenlenmekte ve sadece kalıcı veri içermektedir. Kullanıcı kendi programı için gerekli veriyi kendi seçmektedir. Veritabanının içerdiği bilgiler rastgele değil, bilgi-işlem sisteminin amacına göre derlenmektedir. 1 Bölümdeki bilgiler Kalıpsız, O., Bilgisayar Veri Tabanı Sistemleri,2001, DER Yayınları, s.1-18 kaynağından alıntılanmıştır. 2 Sankur, B. Bilişim Sözlüğü, 2008, Pusula Yayıncılık, İstanbul, s. 189
Veritabanındaki veri, bütünleşik ve ayrılabilir (integrated and shared) biçimde düzenlenmektedir. Başka bir değiş ile çok sayıda bağımsız kütük oluşturularak, bu kütükler anahtarlar (keys) ile birbirine bağlanmaktadır. Böylece kütükler arasındaki madde (item) ve alan (field) yinelemeleri önlenmekte, çok sayıda kullanıcı eş zamanlı ve farklı amaçla aynı veriye erişebilmektedir. 2. Veritabanı Yönetim Sistemi Veritabanı yönetimi (database administration), veritabanlarının tanımı, kontrolü ve veritabanındaki verilerin korunması faaliyetleridir 3. Veritabanı yönetim sistemi (database management system); veritabanını düzenleyen, geliştiren ve bakımını sağlayan karmaşık bir yazılım sistemidir. Bir veritabanı yönetim sisteminin işlevlerini aşağıdaki gibi tanımlamak mümkündür: Kullanıcı bazı özel alt diller (Structured Query Language, SQL) kullanarak isteğini bilgisayara girmekte Veritabanı yönetim sistemi bu isteği alarak derlemekte ve analiz etmekte Kullanıcının dış görünümünden kavramsal ve fiziksel düzeylere doğru denetlenmekte Veritabanında gerekli işlemler yerine getirilmektedir. 3. Diğer Yazılımlar Veritabanı sisteminin ana yazılımı, veritabanı yönetim sistemidir. Bunun yanında sistemin çalışmasına ve denetimine katkıda bulunan çok sayıda değişik işlevli programlar da söz konusudur. Normal bir bilgisayar sisteminde bulunması gereken işletim sistemi ve kontrol programları ile uygulama programları yanında veritabanı yönetim sistemi için özel olarak; veri iletişim yönetimi, uygulama programları ve hizmet programları bulunmaktadır. 4. Donanım Bilgisayarın görülebilir araç ve gereçlerinden oluşan ve değiştirilmesi güç olan öğelerine topluca Donanım (Hardware) adı verilir. Veritabanı yönetim sisteminin işletilmesi için de elbette donanıma gerek vardır. 3 Sankur, a.g.k., s.189
5. Kullanıcılar Veritabanı siteminde; Veritabanı yöneticisi: Veritabanı sisteminin üst düzeyi teknik yöneticisidir. Bir veritabanı sistemini kullanarak, veritabanının kurulması, işletilmesi ile ilgili görevleri yürüten ve veri kaynaklarıyla kullanıcı gereksinimlerini bağdaştırıp sunulan olanakları kullanıcı çevrelerine tanıtan kişi ya da kişiler topluluğudur 4. Üst düzey kullanıcılar: Program yazmaksızın sistem ile etkileşimde bulunurlar. Veritabanına sorularını sorgulama dilinde yöneltirler. Uygulama programcıları Uç kullanıcılar olmak üzere 4 tipte kullanıcı bulunmaktadır. VERİTABANI İLE İLGİLİ DİĞER BAZI TERİMLER 5 Veritabanının Yaratılması (Database Creation): Bir veritabanının adlandırılması, bellekte yer açılması, formatlanması ve tanımlanması işlemleridir. Veritabanı Tasarımı (Database Design): Müşterinin isterlerini karşılayacak şekilde bir veritabanı tasarımını ortaya çıkarmaktır. Veritabanı Motoru (Database Engine): Bir veritabanı yönetim programına erişim sağlayan komutlardır. Veritabanına Erişim Programı (Database Driver): Bir uygulama programının belirli formattaki verilere veritabanında erişilmesini sağlayan programdır. Veritabanı Dosyası (Database File): Geleneksel olarak veritabanları alanlar, dosyalar ve tutanaklardan oluşur. Alan tek bir bilgi parçasıdır. Tutanak bir alan takımıdır. Veritabanı dosyası veritabanı tutanaklarının derlemidir. Örneğin alan kişilerin adlarına karşılık gelir; tutanak kişilerin ad, adres ve telefon numaraları bilgilerinden oluşur; dosya ise bir kuruluştaki tüm kişilerin tutanaklarıdır, sözgelimi tüm telefon rehberidir. Veritabanı Dosya Örgütlenimi (Database File Organization): Bir veritabanındaki dosyaların, veri yapılarıyla ve tutanaklarıyla uyumlu olacak şekilde bellekte düzenlenmesi ve bu verilere bir erişim yönteminin geliştirilmesidir. 4 Sankur, a.g.k, s.189 5 Sankur, a.g.k., s.189
Veritabanı Bütünlüğü (Database Integrity): Bir uygulama programı tarafından kullanılırken, dönemdeş (concurrent) bir güncellemenin yol açacağı belirsizliklere olanak vermeyecek şekilde verilerin korunmasıdır. Veritabanı Anahtarı (Database Key): Veritabanı yönetimi tarafından kullanılan ve veritabanındaki bir tutanağı kesin bir şekilde belirleyen anahtardır. Veritabanı Dili (Database Language): Veritabanlarında modelleme, yaratma, betimleme, kullanma ve yönetme etkinliklerine elveren dil; örneğin, veri tanımlama dili ya da veri kotarma dili, özgü dildir. Veritabanının Örgütlenmesi (Database Organization): Veritabanının ilişkisel, sıra-düzensel türde olabilen yapısal örgütleşimidir. Veritabanı Sunucusu (Database Server): Yerel bir ağ üzerinde bulunup üzerindeki veritabanınını barındıran bilgisayardır. Veritabanlarının Uyumlanması (Database Synchorization): Farklı yerlerdeki veritabanlarının içeriklerinin uyumlu kullanılmasıdır. Veritabanı Destek Programı (Database Utility): Veritabanını kurmak, işletmek, bakımını yürütmek, istatistiklerini toplamak, tutarlılığını sınamak, yeniden yapılandırmak vb. amacıyla kullanılan yardımcı programdır. VERİTABANI NE İŞE YARAR? 6 Bir veritabanı programının nasıl kullanılacağını öğrenmek, Word veya Excel gibi programlar konusunda uzmanlaşmaktan çok daha zordur. Zaten Microsoft Access (MS Access)'in kullanım alanı da Word veya Excel kadar geniş değildir. Başka bir deyişle bu program, genellikle özel ihtiyaçlar için kullanılmaktadır. İşte MS Access programının gerçek anlamda işe yaradığı alanlar: Küçük Kuruluşlar Küçük çaplı şirketlerde müşterilerin taleplerini, siparişleri, ürünlerin teslim tarihlerini ve bunlara benzeyen önemli bilgileri kayıt altında tutmak için Access kullanılabilir. Büyük şirketler ise daha karmaşık veri tabanlarını işleyebilecek, gelişmiş programları tercih ediyorlar. Çünkü Access, veritabanı oluşturmak konusunda üst düzey ihtiyaçlara yeterli cevabı veremeyebilir. 6 http://www.chip.com.tr/konu/ms-access-ilk-ders-veritabani-nedir_3109_2.html, (Son Erişim Tarihi: 05.10.2009)
Aileler Pek çok evde kitaplar, CD'ler veya DVD'ler arşivlenmektedir. Arşivcilik konusuna meraklı olanlar, Access'in yardımıyla her eserin adını, yaratıcısını ve basım tarihini bir arada kayıtlara geçirebilirler. Bu sayede evdeki tüm kitaplar veya CD'ler rahatlıkla arşivlene-bilir ve bu arşiv kayıtları gerektiği anda hızlı bir şekilde araştırılabilir. Okullar Okul çalışanları, öğrenciler ile ilgili önemli bilgileri çoğu zaman Access yardımıyla organize ederler. Bu kayıtlar arasında öğrencinin kişisel bilgileri bulanabileceği gibi, ders notları ve öğretmenlerin görüşleri de yer alabilir. Böylece bir öğrenci hakkında herhangi bir bilgiye ihtiyaç duyulduğunda, bu bilgi veritabanının yardımıyla kolayca bulunabilir ve önemli bir zaman kaybının da önüne geçilmiş olunur. MS ACCESS'İN ÖĞELERİ 7 Tablolar, veri tabanlarının en önemli öğeleridir. Bu tablolarda özel teknik terimler kullanılır; ancak daha çok Excel yapısını anımsatırlar. Sütunlar "alan", satırlar ise "kayıt" olarak adlandırılırlar. Alan ve kayıt arasındaki fark çok önemlidir. Örneğin bir telefon rehberini ele alalım. Tek bir isme bağlı olan verilerin tamamına kayıt diyebiliriz ve bu kayıt da tek bir satırı işgal etmektedir Aynı isim için ayrı ayrı girilmiş her bir bilgi (isim, soyadı, adres, telefon gibi) ise alanları oluşturur. Yani rehber, kayıtlar için tanımlanmış olan verilerin başlıklarının sayısı kadar alandan oluşmuştur. Bir veritabanı, sadece kullanıcıların girdikleri bilgilerle sınırlı olan basit bir yapı değildir. Veri tabanlarında farklı bilgileri birbirleriyle ilişkilendirmek ve bu bilgiler bütününü yönetmek için özel komutlar da bulunmaktadır. MS Access te bir veritabanında Tablolar 8 7 http://www.chip.com.tr/konu/ms-access-ilk-ders-access-in-ogeleri_3109_3.html, (Son Erişim Tarihi: 06.10.2009) 8 http://www.chip.com.tr/konu/ms-access-ilk-ders-calisma-alani_3109_4.html, (Son Erişim Tarihi: 06.10.2009)
Sorgular Kalıplar Formlar Raporlar Web Sayfaları Makrolar bulunabilir. VERİTABANINI OLUŞTURAN NESNELER 9 Bir veritabanında verilere en hızlı şekilde ulaşabilmek, bu verileri kayıtlara eklemek kadar önemli bir noktadır. Bilgileri oluşturan bölümlerin tablolar içerisinde yer almaları işi biraz kolaylaştırabilir. Ancak sorgulanan bilgiler arasında tek bir detayı bulmak için farklı özelliklere de ihtiyaç duyulmaktadır. Makrolar ve formüller sayesinde bu gelişmiş özelliklere erişim mümkün hale gelir. TABLOLAR: MS Access programı ile oluşturulan bir veritabanının en önemli parçası tablodur. Sütunlar alan, satırlar da kayıt olarak adlandırılırlar. Aynı veritabanı içerisinde birden fazla tablo bulunabilir. Bunlardan her biri farklı verileri içerir ve birbirleri arasında ilişkilidirler. RAPORLAR: Rapor, verilerinizi yazdırılmış şekilde sunmanızın etkin bir yoludur. Rapor üzerindeki her şeyin boyutu ve görünümü üzerinde denetime sahip olduğunuzdan, bilgileri onları görmek istediğiniz şekilde görüntüleyebilirsiniz. FORMLAR: Kullanıcıların kolaylıkla bilgi girişi yapabilmelerini sağlamak amacıyla kullanılırlar. İşlevsel görünümleri ve yapıları sayesinde oldukça kolay bir kullanıma sahiptirler. SORGULAR: Özellikle büyük boyutlardaki veri tabanları, verilere hızlı erişilmesini sağlayan bir araçtan faydalanmak zorundadırlar. İhtiyaç duyulan bilginin veritabanı içerisinde bulunabilmesi için tüm muhtemel arama kriterleri sorgular tarafından belirlenir. Access programı, sorguların yaratılması için pratik özellikler sunar. 9 http://electronics.ege.edu.tr/topluluklar/bilgisayar_dersleri/pratik61.html, (Son Erişim Tarihi: 06.10.2009)
Sorgu Form Tablo Tablo Rapor Şekil 1: Veri tabanı öğeleri arasındaki ilişki (http://inpics.net/tutorials/access2007/basics8.html) BİLGİ, BİLGİNİN ÖNEMİ ve BİLGİ YÖNETİMİ 10 En sade şekli ile bilgi, anlamlandırılmış veri anlamına gelmektedir. Bilgi, birçok alanda olduğu gibi yönetim alanda da ağırlıklı bir role sahiptir. Bilgi ve iletişim teknolojilerindeki hızlı değişim ve ilerleme sürecinde organizasyonlar, ancak ellerindeki bilgiyi doğru yönetirse hizmet ve ürünlerinde verimliliğe ulaşabilir, rakipleri arasında devamlılığını sürdürebilir. Günümüzde bilginin artış ve yayılma hızı tarihin hiçbir döneminde görülmediği kadar hızlıdır. Bilgiye erişim süreci de bu hıza bağlı olarak kısalmaktadır. Sorun, bilgi yığınları arasından geçerli / yararlı / istediğimiz bilgiye erişmekte yaşanan zorluklardır. Organizasyonlar bilgi yönetiminin her aşamasında bilgiyi kullanır ve bilgi üretirler. Çağdaş iş üretim ve süreçlerinde başarı için verilere en kısa sürede erişmek, erişilen verileri kayıt altına almak, işleyerek bilgiye dönüştürmek ve verimli biçimde kullanmak gerekmektedir. Bilgi Yönetimi Bilgi yönetimi; bilginin edinilmesi, üretilmesi, düzenlenmesi, geliştirilmesi, korunması, paylaşılması gibi süreç ve yöntemleri içermektedir. Bu süreç çerçevesinde bilgi ve iletişim teknolojilerinin kullanılması-bulunması kaçınılmazdır. Günümüz koşullarının en önemli değer yaratma güçlerinden biri olan bilginin, başarıyla yönetilmesi ve doğru yönlendirilebilmesi için bilgi yönetimine büyük gereksinim duyulmaktadır. Bu nedenle de organizasyonun tüm bilgisinin bir düzen-sistem içerisinde yönetimi büyük önem taşımaktadır. 10 Çankırı, S., Kartal, E., Yıldırım, K., Gülseçen, S. (2009). Organizasyonlarda Bilgi Yönetimi Sürecinde Veri Madenciliği Yaklaşımı, ÜNAK'09
Bilgi yönetimi, en yalın şekilde, bilgi yaratmak, elde tutmak, paylaşmak ve geliştirmek için kullanılacak yeni radikal yollar olarak tanımlanmaktadır. Bu nedenle, bilginin saklanmasını ve bilinçli bir şekilde gelecek kuşaklara aktarılmasını ifade eden olağan bilgi yönetimini değil, şimdi elimizde olan tüm ileri enformasyon teknolojilerini bilgi yaratmak, elde tutmak, paylaşmak ve geliştirmek için kullanan tümüyle yeni ve radikal yolları ele almak gerekir (Barutçugil, 2002, s.49). Bilgi yönetimi, organizasyonel amaçların daha iyi bir şekilde elde edilebilmesi için bireylere, takımlara ve bütün organizasyona bilginin kolektif ve sistematik olarak yaratılması, paylaşılması ve uygulanması için olanak sağlayan yeni bir disiplindir. Bilgi yönetimi, bireyler, takımlar ve organizasyonun bütünü için geçerlidir. Bilginin sistematik olarak yaratılması, paylaşılması ve uygulanmasıdır. Organizasyon çapında bütün düzeylerde bilginin yaratılması önemlidir. Daha sonra olabildiğince çabuk ve uygun ölçüde geniş kapsamlı bir şekilde bu bilginin paylaşılması ve organizasyonun yararına kullanılmasının sağlanması gerekir. Bu, bilginin müşterilerin istediği ürün ve hizmetlere dönüştürülmesiyle gerçekleşir 11. Dolayısıyla birer canlı sistem olan organizasyonlarda bilgi yönetimi; yalnızca belgelerde, depolarda değil çalışmalarda, süreçlerde, uygulamalarda ve normlarda da görülebilmektedir. Bundan ötürü organizasyonların sahip olduğu bilgi kaynaklarını belirlemek, değerlendirmek, analiz etmek, bilginin nerede, nasıl, hangi durumda bulunduğunu yine bilginin özelliklerini, değerini, kullanımını ve kapsamını belirlemek, bilgi yönetimi çalışmasının en geçerli işlevi olmaktadır. 11 Barutçugil, İ. (2002). Bilgi Yönetimi. 2.bs. İstanbul: Kariyer Yayıncılık, S.50
KAYNAKLAR: Kalıpsız, O., Bilgisayar Veri Tabanı Sistemleri,2001, DER Yayınları, s.1-18 Sankur, B. Bilişim Sözlüğü, 2008, Pusula Yayıncılık, İstanbul, s. 189 Barutçugil, İ. (2002). Bilgi Yönetimi. 2.bs. İstanbul: Kariyer Yayıncılık Çankırı, S., Kartal, E., Yıldırım, K., Gülseçen, S. (2009). Organizasyonlarda Bilgi Yönetimi Sürecinde Veri Madenciliği Yaklaşımı, ÜNAK'09 http://www.chip.com.tr/konu/ms-access-ilk-ders-veritabani- Nedir_3109_2.html, (Son Erişim Tarihi: 05.10.2009) http://www.chip.com.tr/konu/ms-access-ilk-ders-access-in- Ogeleri_3109_3.html, (Son Erişim Tarihi: 06.10.2009) http://www.chip.com.tr/konu/ms-access-ilk-ders-calisma-alani_3109_4.html, (Son Erişim Tarihi: 06.10.2009) http://electronics.ege.edu.tr/topluluklar/bilgisayar_dersleri/pratik61.html, (Son Erişim Tarihi: 06.10.2009) http://inpics.net/tutorials/access2007/basics8.html Yararlı Linkler: Microsoft Office Access 2007, http://office.microsoft.com/trtr/access/default.aspx Access 2007 In Pictures, http://inpics.net/tutorials/access2007/basics3.html