Veritabanı Tasarımlarında Karşılaşılan Güçlükler ve Çözüm Önerileri



Benzer belgeler
Analiz aşaması sıralayıcı olurusa proje yapımında daha kolay ilerlemek mümkün olacaktır.

SÜREÇ YÖNETİMİ VE SÜREÇ İYİLEŞTİRME H.Ömer Gülseren > ogulseren@gmail.com

ÖĞRENME FAALĠYETĠ GELĠġMĠġ ÖZELLĠKLER

MAKÜ YAZ OKULU YARDIM DOKÜMANI 1. Yaz Okulu Ön Hazırlık İşlemleri (Yaz Dönemi Oidb tarafından aktifleştirildikten sonra) Son aktif ders kodlarının

DEĞERLENDİRME NOTU: Mehmet Buğra AHLATCI Mevlana Kalkınma Ajansı, Araştırma Etüt ve Planlama Birimi Uzmanı, Sosyolog

Tasarım Raporu. Grup İsmi. Yasemin ÇALIK, Fatih KAÇAK. Kısa Özet

Üniversitelerde Yabancı Dil Öğretimi

5651 Sayılı Kanun Sayılı Kanun Maddesinin Amacı

PROJE TEKLİF FORMU. Haydi birlikte harika bir iş çıkartalım.

B02.8 Bölüm Değerlendirmeleri ve Özet

Verimlilik İçin ETKİN BİLGİ YÖNETİMİ. EXCEL de Etkin Kullanım için Kısayollar

YÜKSEKÖĞRETİM KURUMLARI ENGELLİLER DANIŞMA VE KOORDİNASYON YÖNETMELİĞİ (1) BİRİNCİ BÖLÜM. Amaç, Kapsam, Dayanak ve Tanımlar

B E Y K E N T Ü N İ V E R S İ T E S İ S O S Y A L B İ L İ M L E R E N S T İ T Ü S Ü İ Ş L E T M E Y Ö N E T İ M İ D O K T O R A P R O G R A M I

BİLGİ TEKNOLOJİLERİ VE İLETİŞİM KURULU KARARI

KAMU İHALE KURULU KARARI. Toplantıya Katılan Üye Sayısı : 7 : Elektrik ihtiyacının temini.


Veri Toplama Yöntemleri. Prof.Dr.Besti Üstün

Afyon Kocatepe Üniversitesi Yabancı Dil Hazırlık Sınıfı Eğitim-Öğretim

SİİRT ÜNİVERSİTESİ UZAKTAN EĞİTİM UYGULAMA VE ARAŞTIRMA MERKEZİ YÖNETMELİĞİ BİRİNCİ BÖLÜM. Amaç, Kapsam, Dayanak ve Tanımlar. Amaç

Endüstri Mühendisliğine Giriş. Jane M. Fraser. Bölüm 2. Sık sık duyacağınız büyük fikirler

ATAÇ Bilgilendirme Politikası

İŞLETMENİN TANIMI

VERGİ DENETMENİ TANIM

1. BÖLÜM: SOSYAL MEDYA

Otizm lilerin eğitim hakkı var mıdır? Nedir ve nasıl olmalıdır?

Anaokulu /aile yuvası anketi 2015

TEKNOLOJİ VE TASARIM

SÜRE BİLİŞİM TEKNOLOJİLERİ ÜNİTE 1: : BİLGİ VE TEKNOLOJİ DERS SAATİ: 7

İÇİNDEKİLER. 1. Projenin Amacı Proje Yönetimi Projenin Değerlendirilmesi Projenin Süresi Projenin Kapsamı...

Öncelikle Markamıza göstermiş olduğunuz ilgiden dolayı teşekkür ederiz.

Transfer fiyatlandırma:maliyet dağıtım anlaşmalarıve grup içi hizmet giderleri paylaşımı

Akreditasyon Çal malar nda Temel Problemler ve Organizasyonel Bazda Çözüm Önerileri

YEDİNCİ KISIM Kurullar, Komisyonlar ve Ekipler

+1TL TEK TELEFON SERVİSİ KAMPANYASI (12 AY) TAAHHÜTNAMESİ

İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ ENGELSİZ ÜNİVERSİTE KOORDİNATÖRLÜĞÜ VE ENGELLİ ÖĞRENCİ BİRİMİ ÇALIŞMA USUL VE ESASLARI BİRİNCİ BÖLÜM

ELEKTRONİK VE HABERLEŞME MÜHENDİSİ

BÖLÜM 7 BİLGİSAYAR UYGULAMALARI - 1

BÜRO YÖNETİMİ VE SEKRETERLİK ALANI HIZLI KLAVYE KULLANIMI (F KLAVYE) MODÜLER PROGRAMI (YETERLİĞE DAYALI)

ADANA BÜYÜKŞEHİR BELEDİYESİ KENTSEL DÖNÜŞÜM PROJELERİ

İçindekiler Hosting hizmeti için silme isteği oluşturulması Reseller Paketi altında hosting hizmetinin oluşturulması Kesintiyi en aza indirmek için

KAVRAMLAR. Büyüme ve Gelişme. Büyüme. Büyüme ile Gelişme birbirlerinden farklı kavramlardır.

Danışma Kurulu Tüzüğü

VERİTABANI YÖNETİMİ. Veri Tabanı Tasarımı 2.HAFTA. Veritabanı Yönetimi Prof. Dr. İbrahim Çil

a) Birim sorumluları: Merkez çalışmalarının programlanmasından ve uygulanmasından sorumlu öğretim elemanlarını,

T.C ATAŞEHİR ADIGÜZEL MESLEK YÜKSEKOKULU

Kişisel Bilgiler ve Kişisel olmayan bilgiler Kişisel bilgiler sizi bir birey olarak tanımlayan veya tanımlanmanızı sağlayan bilgilerdir.

GAZİOSMANPAŞA ÜNİVERSİTESİ YAZ OKULU YÖNERGESİ BİRİNCİ BÖLÜM

VEZNE PROGRAMINDA POSTA ÜCRETİ İLE İLGİLİ YAPILAN DÜZENLEMELER (Vezne Sürüm: )

SİRKÜLER NO: POZ-2013 / 107 İST, ELEKTRONİK DEFTER HAKKINDA AÇIKLAMALAR YAPILDI

MUHASEBE GRUBU ÖĞRETMENİ

Bülten Başlığı. Birincil Yazı Başlığı. İkincil Yazı Başlığı. İş Adı. İlgi çeken özel konular: Bu sayıda:

1- Elektronik Defter ve Elektronik Fatura Zorunlulu u Kapsam na Giren Mükellefler

Türk-Alman Üniversitesi Mühendislik Fakültesi Staj Yönergesi. Ek İsterler

Genel bilgiler Windows gezgini Kes Kopyala Yapıştır komutları. 4 Bilinen Dosya Uzantıları

YILDIRIM BEYAZIT ÜNİVERSİTESİ İŞ SAĞLIĞI VE GÜVENLİĞİ KOORDİNATÖRLÜĞÜ YÖNERGESİ BİRİNCİ BÖLÜM

ELEKTRİK ÜRETİM SANTRALLERİNDE KAPASİTE ARTIRIMI VE LİSANS TADİLİ

GİYİM ÜRETİM TEKNOLOJİSİ ÇOCUK DIŞ GİYSİLERİ DİKİMİ (CEKET- MONT- MANTO) MODÜLER PROGRAMI (YETERLİĞE DAYALI)

YÖNETMELİK. a) Basamak kontrolü: On beş basamaklı IMEI numarasının son basamağının doğruluğunun kontrolünü,

Performans Yönetimi Hakkında Ulusal Mevzuatın Avrupa Standartlarıyla Uyumlaştırılmasına Yönelik Tavsiyeler

MADDE 3 (1) Bu Yönetmelik, 4/11/1981 tarihli ve 2547 sayılı Yükseköğretim Kanununun 14 ve 49 uncu maddelerine dayanılarak hazırlanmıştır.

Topoloji değişik ağ teknolojilerinin yapısını ve çalışma şekillerini anlamada başlangıç noktasıdır.

BİREYSEL SES EĞİTİMİ ALAN ÖĞRENCİLERİN GELENEKSEL MÜZİKLERİMİZİN DERSTEKİ KULLANIMINA İLİŞKİN GÖRÜŞ VE BEKLENTİLERİ

Ek 1. Fen Maddelerini Anlama Testi (FEMAT) Sevgili öğrenciler,

İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ YABANCI DİLLER YÜKSEKOKULU HAZIRLIK SINIFI YÖNERGESİ. BİRİNCİ BÖLÜM Amaç, Kapsam, Dayanak ve Tanımlar

İ.Esenyurt Üniv.2016 Yüksek Lisans / Bahar Dönemi Yönetimde Yeni Gelişmeler Sunum 02. Hazırlayan; Erkut AKSOY

MUŞ ALPARSLAN ÜNİVERSİTESİ UZAKTAN EĞİTİM UYGULAMA VE ARAŞTIRMA MERKEZİ YÖNETMELİĞİ

ANALOG LABORATUARI İÇİN BAZI GEREKLİ BİLGİLER

KAMU İHALE KANUNUNA GÖRE İHALE EDİLEN PERSONEL ÇALIŞTIRILMASINA DAYALI HİZMET ALIMLARI KAPSAMINDA İSTİHDAM EDİLEN İŞÇİLERİN KIDEM TAZMİNATLARININ

BİT ini Kullanarak Bilgiye Ulaşma ve Biçimlendirme (web tarayıcıları, eklentiler, arama motorları, ansiklopediler, çevrimiçi kütüphaneler ve sanal

HÂKİMLER VE SAVCILAR YÜKSEK KURULU HUKUKİ MÜZAKERE TOPLANTILARI PROJE FİŞİ

ÖLÇÜ TRANSFORMATÖRLERİNİN KALİBRASYONU VE DİKKAT EDİLMESİ GEREKEN HUSUSLAR

KİŞİSEL GELİŞİM VE EĞİTİM İŞ GÜVENLİĞİ VE İŞÇİ SAĞLIĞI MODÜLER PROGRAMI (YETERLİĞE DAYALI)

1.3. NİTEL ARAŞTIRMA YÖNTEMLERİ GİRİŞ NİTEL ARAŞTIRMALARDA GEÇERLİK VE GÜVENİRLİK SORUNLARI... 2

ANKARA ÜNİVERSİTESİ SENATO KARAR ÖRNEĞİ

MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ)

ZONGULDAK KARAELMAS ÜNİVERSİTESİ BEDEN EĞİTİMİ VE SPOR YÜKSEKOKULU ÖZEL YETENEK GİRİŞ SINAVI YÖNERGESİ BİRİNCİ BÖLÜM

GEÇİCİ KORUMA SAĞLANAN YABANCILARIN ÇALIŞMA İZİNLERİ. ÇALIŞMA VE SOSYAL GÜVENLİK BAKANLIĞI Çalışma Genel Müdürlüğü

Dönemi Piyasa Yapıcılığı Sözleşmesi

1 OCAK 31 ARALIK 2009 ARASI ODAMIZ FUAR TEŞVİKLERİNİN ANALİZİ

K12NET Eğitim Yönetim Sistemi

Başbakanlık (Hazine Müsteşarlığı) tan:

MikroÖdeme Servis Dökümanı

Autodesk Building Design Suite Sorular ve Cevapları

Tasarım ve Planlama Eğitimi Neden Diğer Bilim Alanlarındaki Eğitime Benzemiyor?

Akaryakıt Fiyatları Basın Açıklaması

2 Gemi Kiralama ve Demuraj-Dispeç Hesapları

YÖNETMELİK ANKARA ÜNİVERSİTESİ YABANCI DİL EĞİTİM VE ÖĞRETİM YÖNETMELİĞİ BİRİNCİ BÖLÜM. Amaç, Kapsam, Dayanak ve Tanımlar

Kendi kendini kontrol edebilen, zamanı iyi yöneten, yalnız çalışmaktan hoşlanan, Bilgisayar kullanama yeterliliklerine sahip,

Tek bir Satınalma Hesabı ile birden fazla iş ortağı ile çalışabilir miyim?

BİLGİ TEKNOLOJİLERİ VE İLETİŞİM KURULU KARARI

İnşaat Firmalarının Maliyet ve Süre Belirleme Yöntemleri Üzerine Bir Alan Çalışması

LG BİREYSEL AKILLI TELEFON KAMPANYA TAAHHÜTNAMESİ

Üç-fazlı 480 volt AC güç, normalde-açık "L1", "L2" ve "L3" olarak etiketlenmiş vida bağlantı uçları yoluyla kontaktörün tepesinde kontak hale gelir

25 Nisan 2016 (Saat 17:00 a kadar) Pazartesi de, postaya veya kargoya o gün verilmiş olan ya da online yapılan başvurular kabul edilecektir.

REHBER İLKELERİ VE TS EN ISO EŞLEŞTİRME LİSTESİ

Destekli Proje İşletme Prosedürü

Etkinliklere katılım, ücretli ve kontenjan ile sınırlıdır.

Kalite Güvence ve Standartları

TMMOB EH R PLANCILARI ODASI TRABZON UBES III. DÖNEM ( ) ÇALI MA PROGRAMI

BULUŞ BİLDİRİM FORMU / APARAT

Transkript:

ÖZET Veritabanı Tasarımlarında Karşılaşılan Güçlükler ve Çözüm Önerileri Muhammed Çayırlı Süleyman Demirel Üniversitesi / Keçiborlu MYO S.Demirel Üniversitesi Keçiborlu MYO 32700 Keçiborlu / Isparta TR, cayirli@sdu.edu.tr Bir işletmenin günlük faaliyetlerini sürdürebilmesi için, işletmenin çeşitli konuları ile ilgili ve aynı zamanda işletmenin büyüklüğü ile de doğru orantılı olarak çok miktarda bilgi depolaması gerekebilir. Günümüzde basit bir web uygulamasından, devasa kuruluşların ağır verilerine kadar, birçok alanda veritabanı uygulamalarına ihtiyaç duyulmaktadır. Birçok yazılım ürünü, çok iyi görsel araçlara sahip olmasına rağmen, zamanla kullanışsız hale gelmişlerdir. Bunun önemli nedenlerinden biride yazılımların aşırı veri yoğunluğunu destekleyememeleri ya da mevcut veritabanlarının iyi tasarlanmamış olmasıdır. Bilgisayar Eğitimlerinin en önemli konularından biriside yazılımların üzerinde çalışacağı verilerin organizasyonunu ve tasarımını içeren Veritabanı Yönetim Sistemleridir. Veriler üzerinde çalışmaya başlamadan önce bu verilerin yer alacağı Veritabanlarının tasarımlarının yapılması öncelikli bir zorunluluktur. Bu bildiride yazılım geliştiricilerinin veritabanı tasarımlarında karşılaştıkları güçlüklere bir çözüm önerisi sunulmuştur. Anahtar Kelimeler: Veritabanı, İlişkisel Veritabanları, Veritabanı Tasarımı 1. GİRİŞ Kurum içi ve kurumlar arası ilişkilerin çok fazla gelişmesi ve hatta karmaşıklaşması sonucu, verilerin doğru bir şekilde kayıt altına alınması, saklanması ve gerektiğinde de kolaylıkla erişilebilmesi, şirketlerin iş yapabilme kapasitelerinde büyük artılar sağlamaktadır [1]. Bunun yanında kurumların büyümesi, birden fazla noktaya dağılması ve ayrıca harici iletişim noktalarının (bayiler, tedarikçiler, müşteriler) artması sonucu veri kaynaklarının fazlalaşmasıyla veri yönetimi, günümüzde çok daha önemli bir hale gelmiştir. Bu bağlamda mevcut verilerin tek bir noktada toplanması ve aynı zamanda birçok noktadan da bu bilgilere ulaşılması, veriler üzerinde ihtiyaca göre özelleştirilmiş raporlar yaratılması, bunların düzenli olarak yedeklenmesi ve kullanıcı yetkilendirmeleri yaparak verilere gereksiz ve yetkisiz erişimlerin önlenmesi için iyi tasarlanmış esnek bir veritabanının gerekliliği kaçınılmaz olmaktadır. İyi bir veritabanı tasarlayabilmek için evrensel geçerliliği olan kuralların bulunmaması, tasarımcıların bilgi, yetenek ve tecrübelerini üst düzeyde kullanmalarını gerektirmektedir [2]. Tasarımın temelinde, veritabanı tanımının ve ilişkisel veritabanı kavramının iyi bilinmesi yer almaktadır. Bildirinin ikinci bölümde veritabanı ve ilişkisel veritabanı kavramlarının tanımları verilirken, üçüncü bölümde on madde ile veritabanı tasarımının ilkeleri ve teknikleri sunulmaktadır. Son bölümde ise sonuçlar üzerinde durulmaktadır. 2. VERİTABANI NEDİR? Bir okul; öğretmen ve öğrencilere ait kimlik bilgileri, ders programları, sınav sonuçları, yoklama raporları gibi bilgileri saklama gereksinimi duyabilir. Buna karşılık ticari bir firma ise; personel özlük bilgileri, depodaki malzemelere ait hareketler, müşterilerin telefon numaraları, gelen siparişler, gönderilen teslimatlar, ürün fiyatları gibi bilgileri de saklamak isteyebilir. Belirli bir düzen içinde korunmak istenen bilgilerin içeriği ne kadar farklı olursa olsun, ortak bir konu yada belirli bir amaçla ilişkili bilgilerin oluşturduğu bütüne Veritabanı denilmektedir [3].

Bir işletmenin günlük faaliyetlerini sürdürebilmesi için, işletmenin çeşitli konuları ile ilgili ve aynı zamanda işletmenin büyüklüğü ile de orantılı olarak, çok miktarda bilgi depolanması gerekebilir. Ancak bilgilerin sadece depolanması yeterli değildir. Bu bilgiler arasındaki ilişkilerinde saklanması gerekecektir. Çok büyük sayıdaki bilgilerin klasik dosya sistemi ile depolanması, tutulması mümkün olmadığı gibi veriler arasındaki ilişkilerin belirlenmesi de bir o kadar zordur. Tasarımın önemli ilkelerinden biri olan veritabanının amacını ve ne için kullanılması gerektiğini belirledikten sonra, ortak bir hedefe yönelik verilerin gruplandırılarak tablolarda saklanması gerekir. Belirli bir konuyla ilgili olguların yer aldığı en temel veritabanı nesnesi olan tabloların amacı verileri depolamaktır. Ortak bir hedef dâhilinde farklı tablolarda yer alan verilerin, yeniden anlamlı biçimde bir araya getirilmesi gerekebilir. Bu işlemin gerçekleşebilmesi için tablolar arasındaki ilişkilerin tanımlanması gerekmektedir. İçerisinde yer alan tabloların birbirleriyle ilişkilendirildiği, tüm bilgileri tek tablo üzerinde barındırmayan, gereksiz tekrarlardan arındırılmış, güncelleme ve değişiklik yapılırken tüm veritabanının elden geçirilmediği, hızlı sorgulama yapılabilen, genişleme imkânları kısıtlı olmayan, esnek ve ortak bir amaca hizmet eden bir veritabanı İlişkisel Veritabanı olarak adlandırılabilir [4]. 3. VERİTABANI TASARIMI Bir veritabanı tasarlarken mümkün olduğunca işlevsel olmasına dikkat edilmelidir. Bütün verileri tek bir tabloda toplamak hiçbir zaman amaca tam hizmet etmeyeceği gibi, her şeyin bir arada olması da veritabanının yönetilmesinde ve kontrolünde zorluklara, yapılmak istenilen değişikliklerin zaman almasına ve yapılacak sorgulamalarda zaman kaybına sebep olabilmektedir. Tabloları, sorguları ve diğer veritabanı nesnelerini oluşturmadan önce, tasarımı kâğıt üzerinde oluşturmak ve üzerinde çalışmak, ayrıca tasarımı düşünülen veritabanına benzeyen iyi kurgulanmış veritabanlarını, tabloları arasındaki ilişkileri de göz önünde bulundurarak incelemek iyi bir başlangıç olacaktır [5]. Veritabanı tasarlarken aşağıdaki temel ilkelerin belirtilen sırada uygulanması, tasarımdan beklenen amaca uygun sonuçların alınmasında önemli bir etken olacaktır. 3.1. Veritabanının Amacını Belirleme Veritabanı tasarlamada ilk adım, tasarımın amacını ve ne için kullanılması gerektiğini belirlemektir. Bunun için; Veritabanını kullanacak kişilerle konuşulmalı, tasarımcının ve kullanıcıların veritabanına sormak istediği sorular beyin fırtınası yöntemiyle toplanmalı, Veritabanının oluşturması istenilen raporların taslağı çizilmeli, Verileri kaydetmek için kullanılacak formlar bir araya getirilmelidir. Veritabanının amacı belirlendiğinde, veritabanından istenilen bilgilerin listesi oluşmaya başlar. Bu listeden hareketle, veritabanında hangi olgulara ilişkin bilgilerin saklanması gerektiği ve her olgunun hangi konuyla ilgili olduğunun belirlenmesi gerekir. Bu olgular veritabanındaki alanlara (sütunlara) ve bu olguların ilgili olduğu konular da tablolara karşılık gelir. 3.2. Veritabanında Gerek Duyulan Alanları Belirleme Her alan belirli bir konuyla ilgili bir olguyu içerir. Örneğin, müşteriler ile ilgili şirket adı, adres, şehir, ülke ve telefon numarası gibi olguların saklanması istenebilir. Bu olguların her biri için ayrı bir alan oluşturulması gerekebilir. Hangi alanlara gereksiniminiz olduğunu belirlerken, aşağıdaki tasarım ilkeleri unutulmamalıdır:

Gerek duyulacak tüm bilgiler eklenmelidir. Bilgiler en küçük mantıksal parçalar halinde saklanmalıdır. Örneğin, çalışan adları çoğu kez Adı ve Soyadı gibi iki alana ayrıldığından, verileri Soyadı'na göre sıralamak daha kolaydır. Birden çok öğenin yer aldığı listelerden oluşan veriler için alan oluşturulmamalıdır. Örneğin, bir tedarikçiler tablosunda, tedarikçiden alınan her ürününün virgülle ayrılmış listesini içeren bir Ürünler alanı oluşturulursa, yalnızca belirli bir ürünü sağlayan tedarikçileri bulmak çok daha zor olacaktır. İfade sonucu oluşan türetilmiş veya hesaplanmış veriler eklenmemelidir. Örneğin, BirimFiyat ve Miktar alanları varsa, bu iki alandaki verileri çarpan ek bir alan oluşturulmamalıdır. Birbirine benzeyen alanlar yer almamalıdır. Örneğin, Tedarikçiler tablosunda Ürün1, Ürün2 ve Ürün3 isimli alanlar oluşturulursa, belirli bir ürünü sağlayan tüm tedarikçileri bulmak çok daha zor olacaktır. Ayrıca, belirli bir tedarikçi üçten çok ürün sağlarsa, veritabanının tasarımını değiştirmek gerekecektir. Bu alan Tedarikçiler tablosu yerine Ürünler tablosuna yerleştirilirse, ürünler için yalnızca bir alana gereksinim olacaktır. 3.3. Veritabanında Gereksinim Duyulan Tabloları Belirleme Her tablo ortak bir konu ya da belirli bir amaç hakkında bilgi içermelidir. Alan listesi, gereksinim duyulan tablolara ilişkin ipuçları sağlar. Örneğin, bir İşeAlmaTarihi alanı varsa, bu alanın konusu bir çalışandır ve bu nedenle de Çalışanlar tablosuna aittir. Müşteriler için bir tablo, Ürünler için bir tablo ve Siparişler için farklı bir tablo veritabanında yer alabilir. 3.4. Her Bir Alanın Hangi Tabloya Ait Olduğunu Belirleme Her bir alanın hangi tabloya ait olacağına karar verilirken şu tasarım ilkeleri göz önünde bulundurulmalıdır: Alan, yalnızca tek bir tabloya eklenmelidir. Tablonun birçok kaydında görünen bilgilerin aynısını verecekse, alan bir tabloya eklenmemelidir. Tablodaki bir alanın çok miktarda yinelenen bilgi içereceği belirlenirse, o alanın yanlış tabloda olma olasılığı çok yüksektir. Örneğin, bir müşterinin adresini içeren bir alan Siparişler tablosuna eklenirse, müşteri birden çok sipariş verdiğinde bu bilgiler birden çok kayıtta yinelenebilecektir. Bununla birlikte, adres alanı Müşteriler tablosuna koyulursa, yalnızca bir kez görünür. Bu bakımdan, bir veritabanındaki bir tablo, çalışma sayfası gibi düz bir dosya veritabanındaki bir tablodan farklıdır. Her bilgi parçası yalnızca bir kez saklandığında, bu bilgi tek bir yerde güncelleştirilebilir. Bu daha faydalıdır ve böylece farklı bilgi içeren yinelenen giriş olasılığı da ortadan kalkmış olur. 3.5. Alanı Her Kayıttaki Benzersiz Değerlerle Tanımlama İlişkisel bir veritabanı, farklı tablolarda saklı bilgileri bağlamak için, örneğin, çalışanların aldığı sipariş talepleri ile çalışanları ilişkilendirmek için, veritabanındaki her tablo veya tablodaki her ayrı kaydı benzersiz olarak tanımlayan bir alan veya alanlar kümesi içermelidir. Bu tür bir alana veya alanlar kümesi birincil anahtar olarak adlandırılır. Birincil anahtar benzer bilgileri birbirinden ayıran ve her kaydı benzersiz kılan bir tanımlayıcıdır. Ayrıca bilgileri bir araya getirir. Bir tablo, birincil anahtar kullanılarak başka

bir tabloyla ilişkilendirilebilir. Tablolar bu şekilde veri paylaşır ve her iki tabloda da verilerin yinelenmesini engellenmiş olur. Birincil anahtarlar, bakımı zor olan ve birlikte çalışmayan çok sayıda yinelemeli listelerle çalışmak yerine ilişkisel veritabanlarının gücünden yararlanmaya olanak sağlar. Anahtar alanların seçiminde, tasarımcıyı kısıtlamadığı sürece, doğal alanların tercih edilmesinde önemli fayda vardır. Örneğin, araçlar ile ilgili bir tablo oluştururken, plakalar anahtar alan olarak belirlenebilir. Çünkü her bir plakadan bir tek araç trafiğe çıkabilir. Bu tasarımcıyı kısıtlamaz. Öğrenci tablosu için, öğrenci numarası doğal bir anahtar alandır, çünkü aynı okulda, aynı numaradan bir öğrencinin daha bulunması söz konusu değildir. Tablolar ilişkili olduğunda, bir tablonun birincil anahtarı diğer tablonun yabancı anahtarı olmaktadır. 3.6. Yinelenen Bilgi İçeren Alanlar İçin Ek Tablo Oluşturma Veritabanı için gereksinim duyulan alanlar ve bu alanların yer alacağı tablolar belirlendikten sonra her hangi bir alanda tekrarlanan verilerin oluşması, tasarımında en sık karşılaşılan veri tekrarı hatasının olduğunu göstermektedir. Tasarımın hatasız olabilmesi, yinelemenin olduğu bu tablonun en az bir tabloya daha ayrılmasıyla mümkün olabilir. Tasarımın bu önemli ilkeleri dâhilinde unutulmamalıdır ki, her veritabanı projesine uyacak evrensel bir tasarım tekniği yoktur. Dolayısıyla iyi bir tasarım bu kurallar çerçevesinde tasarımcının ne kadar teferruatlı düşünebildiğine bağlıdır. 3.7. Anahtar Alana Bağlı Olmayan Alanları Belirleme İlişkisel veritabanlarında, tablodan herhangi bir tek kayda erişmek için mutlaka bir farklı özellik sağlanmalıdır ve bu özellik de anahtar alan vasıtasıyla gerçekleşir. Ancak bazen, anahtar alan ile aynı tabloda yer aldığı halde, anahtar alan ile birebir ilişkisi olmayan bir alan bulunabilir. Bu türden alanları elimine edip ayrı tablolara ayırmak gerekmektedir. Örneğin, bir kütüphane bilgilerini içeren veritabanı tasarımında, Ödünç tablosunu ele alacak olursak, ödünç verilen her kitap için ödünç alanın adresi de bilinmek istenebilir, ancak bu bilgi Ödünç tablosuna yazılmamalıdır. Çünkü Ödünç tablosunun birincil anahtar alanı, uygun bir doğal alan olmadığı için ödünç verme sayısını tutan OduncNo alanı olacaktır. Dolayısıyla bu alana yazılacak bilgi, ödünç verme işlemi ile doğrudan ilgilidir. Oysa ödünç alanın adres bilgisi, ödünç alan kişinin kendisine bağlı bir özelliğidir. Bu kişinin her aldığı kitap için adresini tekrar tekrar yazmaya gerek yoktur. Aynı şekilde otomasyon içerisinde başka yerlerde de bu kişinin adres bilgilerine muhtemelen ihtiyaç duyulabilir çünkü adres Ödünç tablosunun değil, üyenin bir özelliğidir. 3.8. Tablolar Arasındaki İlişkileri Belirleme Veritabanında yer alacak bilgileri farklı tablolara belirli konu başlıklarına göre ayırıp, birincil anahtar alanlarını belirlendikten sonra veritabanımıza ilgili bilgileri ayrı tablolardan yeniden anlamlı biçimde bir araya getirmesini söyleyebilmek için, tablolar arasında ilişkilerin belirlenmesi ve tanımlanması gereklidir. Her biri bir konuya dair verileri barındıran tabloların tümü göz önüne alınmalı ve birbirleri ile olan ilişkileri tanımlanmalıdır. Örneğin, kütüphanede bulunan bir kitabı ödünç verebiliriz. Bu durumda, Ödünç tablosu ile Kitap tablosu arasında bir ilişki olacaktır. Kitapların üyelere ödünç verilmesinden dolayı, Ödünç tablosu ile Üyeler tablosu arasında da bir ilişki tanımlanmalıdır. Kitaplar ile üyeler arasında ortak bir amaca yönelik herhangi bir bilgi olamayacağından dolayı bu iki tablo direkt bir ilişki içinde değildir, ancak dolaylı olarak Ödünç tablosu üzerinden bir birlerine bağlıdırlar.

3.9. Tasarımı Geliştirme Tasarımı yapılan veritabanında gerek duyulan tablolar, alanlar ve tablolar arası ilişkiler belirlendikten sonra, sıra tasarım üzerinde çalışmaya ve olabilecek hataları araştırmaya gelmiştir. Veritabanı tasarımını şimdi değiştirmek, tabloları veriyle doldurduktan sonra değiştirmekten daha kolaydır. Kullanılacak Veritabanı Yönetim Sisteminde tasarlanan yapıyı oluşturduktan sonra henüz veri girişi yapılmadan veritabanındaki ilişkileri denemek için, istenilen yanıtları almak amacıyla sorgular oluşturup oluşturulamayacağı denetlenmeli, formların ve raporların taslakları oluşturulup beklenilen sonuçları gösterip göstermediği kontrol edilmelidir. Ve son olarak veritabanının iyileştirilmesi ve esnek bir tasarımın olabilmesi için eğer varsa gereksiz yinelenen veriler tespit edilmeli ve ortadan kaldırılmalıdır. 3.10. Tasarımı İyileştirme Tablolara isim verirken mümkün olduğu durumlarda tekil isimler kullanılmalıdır. Böylece hem daha anlaşılır bir tasarım yapılmış hem de daha sonra kodlama aşamasında karşılaşılabilecek karışıklığın önüne geçmiş olunur. Örneğin, içinde kitap ile ilgili bilgiler bulunduracak tablonun adını Kitap koymak oldukça mantıklıdır. Tabloların yapısını oluştururken ilk sıraya o tablo için birincil anahtar olarak belirlenen alanı yerleştirmek bir kural değildir ancak tablonun okunabilirliği ve göze hoş görünmesi açısından tercih edilmesi, iyi bir tasarım için yararlı olacak bir tekniktir. Bir tablo için doğal bir anahtarın belirlenemediği durumlarda tabloya, yapay birincil anahtar alan eklenir. Bu anahtar alan isimlendirilirken genellikle tablo adı ile başlar ve sonuna ID ifadesi eklenir. Örneğin, Sipariş tablosunda her bir siparişi birbirinden benzersiz kılan bir doğal anahtar bulunmadığı durumlarda, birincil anahtar olarak atanan yapay anahtara SiparisID ismi verilebilir. Farklı tablolarda yer alan iki alan aynı veriyi tutuyorsa, iki alana da aynı ismi vermek, karışıklığa yol açabilir gibi görünse de aslında bu sayede daha düzgün bir yapı ortaya çıkar. KitapNo alanı, Kitap tablosunda da Ödünç tablosunda da kitap numarası tutmaktadır. Bu alanlardan birine KitapNo diğerine OduncGidenKitapNo demek, karışıklığa neden olabilir. En iyi seçim her iki tabloda ortak veri tutan alanlara aynı ismi vermektir. 4. SONUÇ Veritabanları ana hatlarıyla, veriyi verimli şekilde depolamayı ve bilgiye dönüştürmeyi amaçlayan sistemlerdir. Veritabanı sistemleri, günümüzde hemen her gün kullandığımız birçok yerde karşımıza çıkmaktadır. Faturalarımızın ödenmesi, sinema rezervasyonları yada sıklıkla kullandığımız e-posta işlemlerinin temelinde bir veritabanı bulunmaktadır. Büyük veya orta ölçekli bir veritabanı projesinin geliştirilme sürecinde doğruluk, güvenlik, verimlilik hayati önem taşımaktadır. Hataların oluşmasını engellemek ve esnek bir veritabanı tasarımına sahip olmak için on adımda anlatılan bu tasarım ilkelerinin belirtilen sırada uygulanması gerekir. Tasarımın bu önemli ilkeleri dâhilinde unutulmamalıdır ki, her veritabanı projesine uyacak evrensel bir tasarım tekniği yoktur. Dolayısıyla iyi bir tasarım bu kurallar çerçevesinde tasarımcının ne kadar teferruatlı düşünebildiğine bağlıdır.

5. KAYNAKLAR [1]. http://www.redbilisim.com/public/veritabani.aspx?nmx=2_5 (Erişim Tarihi: Ocak 2005). [2]. Gözüdeli, Y., Veritabanı Programlama, Byte Türkiye Dergisi Yayınları, İstanbul, 2003 [3]. Köseoğlu, K., Veritabanı Mantığı, ISBN: 975-6477-56-3, Pusula Yayıncılık ve İletişim İstanbul, 2005 [4]. http://www.aspnedir.com/makaleler_icerik.asp?id=73 (Erişim Tarihi: Haziran 2005). [5]. http://office.microsoft.com/tr-tr/training/default.aspx (Erişim Tarihi: Haziran 2005).