You are on page 1of 77

Eer bana bilgisayar kullanmn hakl gsterecek tek bir ey ey

derseniz, hemen Veritaban derim. Veri-ilem. Ve ister telefon


defterinizi oluturun, ister firmanzn demirba envanterini tutun,
Microsoft Access, her trl veritaban ihtiyacnz karlayacaktr ve
daha fazlasn verecektir. Eskiden, PCye, IBM-uyumlu bilgisayar
dendii yllarda, i dnyasnda satnalma grevlileri arasnda yaygn bir
sz vard: IBMden ama, kovulmazsn! Eer kullanmn iyi bildiiniz
iin her an i bulabileceiniz bir program varsa o da Access olmal.
Artk kime kelime-ilem program kullanabiliyor diye kimseyi ie
almyor. Oysa Access, gerek bir ok ilemi otomasyona balayabildii,
brakn otomasyonu program-iinde-program yazmaya elverili oluu
ve amzn arac Internet iin gerekli ODBC uyumlu veritabanlarn
oluturabilmesi sayesinde, bilgiilem alannda yeni bir gelecek vaad
ediyor. Veritabanlarnn en nemli zellii ve onlar bir kelime ilem
programyla yapabileceiniz listelerden farkl klan n nemli zellii bir
veritabannda yer alan farkl tablolarn birbiri ile ilikilendirilmesidir.
Bundan nceki srmlerinde Access, her bir tablonun kendi iinde
dzenlenmesine izin verirdi; oysa artk ilikilendirilm tablolarn
tmn birarada sanki tek tablo imi gibi dzenlemeniz (edit) ve
gncelletirmeniz mmkn. Access 2000 ile almak daha kolay:
Metin kutularnz ve dier kontrolleriniz (dmeler, grafikler, yollar)
gruplanabilir ve bylece tek tek deil toplu olarak dzenlenebilir. artl
biimlendirme yoluyla, verilerinizi belirli art karlyor ve
karlamyorsa, dikkat ekici biimlere sokabilirsiniz. Access bugne
kadar sadece kendi dosyalar iin bir kullanm aracyd. Artk deil:
Access 2000 ile SQL uyumlu btn veritabanlarna eriebilir, bu
verilerle Acces dosyalar ile neler yapabiliyorsanz, yapabilirsiniz.
Dardan SQL-uyumlu veri satnalan firmalar, artk bir de bu verileri
kullanabilmek iin gerekli programlar satn almak zorunda deiller. Ve
Access ile oluturacanz verilerle hazrlayacanz raporlar artk
bilgisayarnda Access kurulu olmayan kiilere de rahata verebilirsiniz;
Access 2000 Snapshots, bu biimi (.snp) destekleyen btn iletim
sistemlerinde ve programlarda grlebilir, baslabilir ve kullanlabilir.
Access 2000 ile veri-ileme dnyasna yeni bir kavram geliyor: Veri
eriim sayfalar. Bu, Internette grdnz trden bir Web sayfas ve
Microsoft Acces veritaban dosyasnda veya bir Microsoft SQL Server
veritabannda yeralan verilerin grlmesini, bu verilere ek yaplmasn,
deitirtilmesini veya baka bir surette ilenmesini mmkn klyor. Bir
1
baka deyile, Accessi kullanarak bir veri taban oluturun, veya
Access ile eriebildiiniz bir SQL Server dosyasn aln ve bu verilere
dayanan bir veri eriim sayfas hazrlayn. Sonra bunu ister
Internette koyun, ister firmanzn dahili Internetine (Intranet). Bu
sayfaya ulaan herkes, verdiiniz yetki erevesinde sayfann veri
ektii veritabanndaki bilgileri alabilir, deitirebilir, ekleyebilir. (u
noktada, veri-ynlendirmeli Internet Uygulamas tasarm ve gelitirme
ii iin vereceiniz 5 bin Dolar tasarruf etmi bulunuyorsunuz!) Access
2000i kurduunuz zaman gerekli unsurlardan ve aralardan hemen
hepsi kurulmakla birlikte, Acces ile hazrlayacanz formlarda
kullanabileceiniz temalardan baz, sk kullanlmayan baz sihirbazlar,
Microsoftun armaan Adres Defteri uygulamas, sadan sola yazlan
dil destei, Grsel Tasarm Aralar denen zellikle veri eriim sayfas
yapmakta kullanabileceiniz programcklar, tarayc ve kamera destei,
Visual Basic yardm destei ve Windowsun yeni makro dili olmaya
balayan Windows Scriptingi oluturmanz ve kullanmasn salayacak
Editr, kurulmayacaktr. Bu aralar ve programlar ancak ilk kez
ihtiyacnz olduunda yklenir. Bu arada veritabanlarnzda takvim
destei iin gerekli dosyalar, denklem editr, uluslararas destek
dosyalar, Lotus destei, Microsoft Photo Editor, (ve mehuur
Northwind proje dosyalar) siz istemedike kurulmayacaktr. Bu destek
dosyalarna ihtiyacnz olup olmadna siz karar vereceksiniz. Ama bu
daha sonra. Bundan nceki Office 2000 ailesi programlarla ilgili
kitapklarda belirttiimiz gibi, Access dnyasna Access 2000 ile adm
atyorsanz, bu kitapkla Accessi derhal kullanmaya balayacaksnz.
Access zaten kullandnz bir program ise bu kitapk size sadece yeni
Access aralarn tantma asndan yararl olabilir. Fakat, kimbilir,
bugne kadar el yordamyla yaptnz bir ok eye yeni bir anlam
kazandrabiliriz! Bu kitapn dzenlenmesinde, programn ilevsel
zelliine uygun bir ders kitab ve daha sonra bavurulabilecek kk
bir hatrlatma kayna salama ilkesini gttm. Ama Access, bu
hacimde bir kitapla sadece tantlabilir.
Dier Office programlarnn ehresini tanyorsanz, Access 2000in
men ve ara ubuklar size hi de farkl grnmeyecektir. Sadece
Access dosyalarnn veri-taban dosyas olmasnn sonucu farkl bir ka
men maddesi grebilirsiniz. Buna karlk programn alma alan
dier programlardan olduka farkldr.
Access 2000, btn Windows 95/98 programlar gibi eikli yollarla
balatlabilir.
Masastnde Access simgesi varsa, bu simgeyi iki kere tklayarak
program aabileceiniz gibi, Balat mensnden Programlar ve
2
alacak listede Microsoft Accessi seebilirsiniz. Office 2000, Balat
mensne Yeni Ofis Belgesi ve Ofis Belgesi A maddelerini de koyar.
Bu maddeleri kullanarak Ofis ailesine ait herhangi bir program
altrabilirsiniz. Tabi, Accessin oluturduu (uzatmas .mdb olan)
herhangi bir dosyay iki kere tklayarak da Accessi balatmanz
mmkndr.
Access de btn Windows programlar gibi kendi penceresinde alr ve
bu pencereyi istediiniz gibi btbelir, kltebilir, simge durumuna
getirebilir veya tm ekran kaplatabilirsiniz.
Access penceresinde kullanacamz unsurlar yle sralayabiliriz:
Men ubuu: Access 2000in btn kontrol unsurlar, komutlar ve
diyalog kutular menlerden alr. Btn Office 2000 programlar gibi
Accessin menleri de sizin kullanm tarznza gre biimlenir. Men
maddelierini tkladnzda alan listelerde nce en sk kullanlan
maddeler yer alr. Bir men aldnda herhangi bir seim yapmaz ve
bir saniye beklerseniz, listenin uzadn ve daha seyrek kullanlan
maddelerin de grntlendiini greceksiniz. Eer beklemek
istemiyorsanz, Mouse iaretisini doruca listenin, ortasnda ucu aa
bakan bir ok bulunan alt kenarna srkleyin; liste derhal uzayacaktr.
Ilk alan maddeler yerine daha sonra alan maddeler arasnda seim
yaparsanz, Access 2000 bu tercihinizi renecek bir dahaki sefere bu
maddeyi ilk alan listeye koyacaktr. Sk kullandnz maddeler ise
listede yukar doru terfi ederler. Men ubuunda yer almasn
istediiniz bir komut varsa, bu komutu ayr bir men unsuru olarak
olarak veya mevcut menlerden birine madde olarak ekleyebilirsiniz.
Aralar mensnden zelletir maddesini ve alacak kutuda Komutlar
sekmesini sein; Komutlar blmnden men ubuunda olmasn arzu
ettiiniz komutu Mouse iaretisiyle tutarak, men ubuunda arzu
ettiiniz yere brakn. Bu komutun mevcut menlerden birinde yer
almasn istiyorsanz, Mouse iaretisini men baln zerinde bir
sre tutun, men aldnda leni komutu arzu ettiiniz sraya brakn.
Menler uzun alsn istiyorsanz..
Eski usul menlere alt iseniz ve menlerinizin ilk aldnda btn
maddeleri ile birlikte almasn istiyorsanz, Aralar mensnden
zelletir maddesini, ve alacak kutuda Seenekler sekmesini sein:
Burada, Menler nce son kullanlan gsterir maddesinin nndeki
iareti kaldrn. Son kullanlan men maddelerinin yukarlarda yer
almasn istiyor, fakat mennn iki aamada tamamlanmasn
3
istemiyorsanz, Ksa bir gecikmeden sonra tam menleri gster
maddesinin iareti kaldrabilirsiniz
Ara ubuu: Access 2000in 23 ayr ara ubuu vardr ve hepsini
atnzda muhtemelen veri penceresi iin yer kalmayacaktr! Ayrca
ara ubuklarndaki simgeleri deitirebilirsiniz. Szgelimi, varsaylan
olarak alan Men ubuu adl ara ubuunda yer alan bir simgeyi
hi kullanmadnz iin istemiyorsanz veya yeni bir komutu simge
halinede ubua almak istiyorsanz, Aralar mensnden zelletir
maddesini ve alacak kutuda Ara ubuklar sekmesini sein. Kutu
akken, ara ubuunda istediimiz simgeyi Mouse iaretisiyle
tutarak, ubuk dnda bir yere brakn. Ara ubuuna eklemek
istediiniz komut varsa, zelletir kutusu akken, Komutlar sekmesini
sein; Komutlar blmnden ara ubuunda olmasn arzu ettiiniz
komutu Mouse iaretisiyle tutarak, ara ubuunda arzu ettiiniz yere
brakn. Bu suretle eklediiniz yeni simgenin resmini deitirmek de
elinizdedir. Henz oluturduunuz simge seili iken, Komutlar
sekmesindeki Seimi Deitir dmesini tklayarak ve alacak
menden arzu ettiiniz simgeyi seebilirsiniz:
Veritaban Penceresi: Accesste atnz veritabanlar, ana pencere
iinde kendi pencerelerinde, kendi menleri ve kendi komutlar ile yer
alrlar. Bu pencerenin gelerini aada ele alacaz.
Durum ubuu: Access, programn ilemesine, Veritabannn
durumuna ve yapmak istediiniz ilere ilikin mesajlarn size
penceresinin elt erevesindeki durum ubuunda bildirir. Accesse bir
ey yaptrmak istiyorsanz ve Access bu komutu yerine getirmek
istemiyorsa, muhtemelen sebebini Durum ubuunda belirtiyor
olabilir. Bu ubuktaki bilgilerden yararlanabilirsiniz.
Ois !ar"mcs: Access 2000, Men ubuundaki Yardm mensnn
irin ve kullanm daha kolay temsilcisi olarak size 8 yardmc sunuyor.
Yardmcy her an tklayarak soru kutusunu aabilirsiniz. Access 2000
Ofis yardmcs, dzgn bir Trke soru cmlesini anlayp, size doru
cevab vereibilir. Ama bunun iin nce sizin Ofis Yardmcsnn anlad
soru tarzna biraz aina olmanz gerekiyor. Klasik Windows yardm
kutusu da Yardm mens vastasyla alabilir. Bu kutuda Dizin ve Ara
sekmeleri bazen Ofis Yardmcsndan daha hzl sonuca ulamanz
salayabilir. (Veritaban ile uramaktan ok skldnz bir an, Ofis
Yardmcs sa tklayp, Oynat maddesini seebilirsiniz!
Veritaban Penceresi
Accessde ak her veritaban iin bir veritaban penceresi bulunur.
Veritaban, yaptnz ie bal olarak bu pencerenin iinde veya dnda
ayr bir pencerede grntlenebilir. Bu grnmler ou zaman
4
Veritaban penceresi iinde yaptnz tercihlere baldr. Veritaban
penceresinin unsurlarn ele alalm.
Veritaban penceresinin kendi men ubuu vardr; ancak bu ubuktaki
unsurlarla sadece ait olduu veritabanna ilikin iler yapabilirsiniz.
rnein bu ubuktaki A simgesi, veritabannn seilmi olan nesnesini
(tablosunu, formunu, raporunu, sorgusunu, sayfasn, sorgusunu veya
modln) aar. Tasarla maddesiyle, mevcut nesnelerden birinin
tasarmn deitirebilirsiniz. Yeni maddesi ise baz sihirbazlar veya
tasarm grnmnde yeni tablo ve rapor yapmn harekete geirecek
maddeler ieren bir diyalog kutusu aar. Sil simgesi ise seilmi
nesneyi siler.
Veritaban penceresinin drt grnm belirleme simgesi ise, veritaban
penceresinin iindeki nesnelerin byk veya kk simge halinde ya da
ksa veya ayrntl liste olarak gsterilmesini salar. Yukardaki rnekte,
ayrntsz liste grnm var. Ayrntl listede nesnenin ad, tanm,
oluturma ve deitirme tarihleri ile tr gsterilir.
#ilinen tablo ne olur$
Veritaban penceresindeki byk X harfi grnmndeki simge, tablo,
form, rapor gibi seilmi bir nesnenin silinmesini salar. Aralar
mensnde, Seenekler maddesini ve bu kutuda Dzen/Bul sekmesini
tklayarak ve buradaki Onayla blmnde en azndan Belge silmeyi
maddesini iaretlemezseniz, silinen nesne, silinmi olur. Bu yzlerce
kiinin aylarca sren emei ile hazrlanm ve her nedense yedei
bulunmayan bir tablo olabilir. ou zaman kazayla silinen nesnelerin
yer ald veri tabanlarnn yedei bulunmaz! Bir onay kutusunda Evet
dmesini tklamak, byle bir kaypla kar karya kalmaktan daha az
zahmetli olsa gerek! Access iinde sildiiniz nesnenin geri
gelmeyeceini unutmayn!
Veritaban dendii zaman aklmza genellikle sadece tablolar gelir.
Oysa veritaban, en azndan veriler arasnda seme yapmay salayan
sorgu (query) aralar da iermelidir. Yoksa veritabannn bir kelime
ilemciyle oluturacanz listeden fark olamaz. Access 2000 veritaban
dendiinde bir ok nesneyi birden anlar. Bu nesneler, birarada,
veritabann olukurular. Bir veritabannda bulunabilecek nesneleri
ilerde ele alacaz. Fakat imdilik veritabann tablolar demeti olarak
dnn. Access tablosu, sizin tayin ettiiniz sayda stun ve yine sizin
bilgi girdiiniz miktarda satrdan oluur. Accesste veritablosu yapmay
da ilerde ele alacaz. Access size tablolarmza bilgi girmek veya bu
bilgileri dzenlemek iin sorgu, form, modl ve makro adnda aralar
5
sunar. Tablolar ve bu aralar kullanarak oluturacanz sorgular,
formlar, modller ve makrolar, veritabanzn nesneleridir. Bir
veritabannda u nesneler bulunabilir:
1. Tablolar: Verilerinizin iinde bulunduu listeler. Yeni bir veritaban
dosyas oluturmak zere Access 2000i altrdnzda alan bo
veritaban penceresinde, tablo oluturmak zere komut ksayolu
veya ara grrsnz. Bunlar, Tasarm grnmnde tablo olutur,
Sihirbaz kullanarak tablo olutur ve Veri girerek tablo olutur adn
tar.
2. Sorgular: Verilerinizi tablolar halinde ortaya karttktan sonra, bu
verilerden yeni semeler yapmak, belirli bir lk (kriteri)
karlalayan veya karlamayanlar semek ve benzeri veri-ilemlerini
sorgu (Query) aracyla yaparsnz. Access 2000, Tasarm
grnmnde sorgu olutur ve Sihirbaz kullanarak sorgu olutur
adl iki arala sorgu oluturmanz salar.
3. Formlar: Veri girme veya veri-ilem ilerinizi kolaylatran aralardr.
Formu, veritabannzdaki bilgilere denk kutular ieren bir tr grafik
arayz sayabilirsiniz. Access 2000, Tasarm grnmnde form
olutur ve Sihirbaz kullanarak form olutur adl iki arala form
oluturmanz salar.
4. Raporlar: Verilerinizin bir bakma ham liste halinde kurtarlp,
anlaml diziler haline getirilmesine rapor kartma denir. Access 2000,
Tasarm grnmnde rapor olutur ve Sihirbaz kullanarak rapor
olutur adl iki arala rapor oluturmanz salar.
5. Sayfalar: Veri eriim sayfalar. Access 2000in yeniliklerinden olan
sayfalar bundan byle veritaban dosyalarnzn bir paras olarak,
veriye bal, vergi gncelletirildikte yenilenen Web sayfalar hazrlama
imkan sunuyor. Access 2000, Tasarm grnmnde veri eriim
sayfas olutur, Sihirbaz kullanarak veri eriim sayfas olutur ve
Zaten varolan Web sayfasn grntle adl arala veri eriim
sayfas yapmanz veya varolan sayfay yeniden dzenlemenizi salar.
Makrolar, modller: Tpk kelime ilem programlarnda olduu gibi, sk
sk tekrar ettiiniz ilemleri, makro ve modl haline getirebilir ve
bunlar uygun olan herhangi bir tablo, form veya sorguda
kullanabilirsiniz. Makro ve modlleri gelitirme ii ya otomatik olarak
Access tarafndan yaplr; ya da siz Visual Basic for Applications
(Uygulamalar iin Grsel Basic dili) editrn kullanarak kendiniz
makro ve modl oluturabilirsiniz.
%&rnmler
Bir veri tablosu, Accesste eitli grnmlere sahip olabilir, veya
baka bir deyile veritabannz farkl biimlerde grntleyebilirsiniz.
6
Accesste tablolarnz genellikle veritaban grnmde bulunur;
bununla birlikte tablolar form grnmnde de ilenebilir,
doldurulabilir, dzenlenebilir.
Veritaban grmnde, bir Access tablosu ile szgelimi bir Excel
tablosunun farkn ayrt etmek zordur. Bu grnmde tablonun
erevesinin st kenarnda ad yazl olur; bunun hemen altnda ise
tablodaki alan adlarnn bulunduu balk blm vardr. Kaytlar ise
tablonun satrlar olarak sralanr. Tablonun sa ve alt kenarlarnda
kaydrma ubuklar bulunur. Tablonun alt erevesinin son kesinde
Gezinme Dmeleri yer alr. Bu dmeleri kullanarak tablodaki kaytlar
arasnda gidip gelebilirsiniz. En soldaki dme ile en baa, en sadaki
ikinci dme ile de en sona gidersiniz. zerinde yldz bulunan sadaki
dme ise size yeni bir kayt girmeniz iin bo satr aar. Ayrca
buradaki kutuya istediiniz kaydn sra numarasn yazarak, doruca o
kayda gitmeniz mmkndr.
Access 2000 kurulduu srada bilgisayarnza rnek baz veritabanlar
ve hatta kullanlmaya hazr veri-ynlendirmeli iki Access-uygulamas
kurar. (contacts.mdb ve addrbk.mdb) Bu rnek veritabanlarn
atnzda byk bir ihtimalle, birinci stunun solunda iinde art (+)
iareti olan bir stun greceksiniz. Bu, o kaydn baka tablolarla
ilikilendirilmi olduunu gsterir. Access 2000le gelen bu yenilik ve
kazandrd imkanlar zerinde sonra ayrntl duracaz.
Access veritaban, tablo olarak grntlenebildii gibi, Form olarak da
grntlenebilir.
Access 2000, veri tablolarnz alarak, form biimine getirebilir veya
bunu size brakabilir. Accessin otomatik oluturduu tablolar sonradan
yeniden ekillendirebiliriz. Bir tablona hangi alanlar ve bu alanlarn
karsnda ne deerler varsa, formda da onlar bulunur. Formlarda da
gezinme dmeleri yer alr.
Accessin bir dier veri grntleme biimi ise sorgulama sonucu
ortaya kar. Sorgu (query) veritaban dosyasndaki tablo veya
tablolardan seme yapmak demektir. Seme ilemi iin ltleri
(kriterleri) u tablodan u alanlar al! diye mutlak biimde siz
belirtebileceiniz gibi, u alandaki deer u ise, undan aa ise,
bundan yukar ise, veya bu deilse.. eklinde mantksal olarak da
tanmlayabilirsiniz. Access 2000, bu ltlere uyan kaytlar seerek bir
sorgu sonucu oluturur; bu sonu veritaban dosyasna tablo olarak
kaydedilebilir; veya sadece siz sorguyu altrdnz srada ortaya
kar; sorgu ilemi bitince yok olur.
7
Mouse'unuzun sa "mesi
Access 2000, dier Ofis 2000 programlar gibi, Mouseun sa
dmesine eitli ilevler ykler. Mouseun sa dmesi, zerinde sa-
tkladnz nesnenin gerektirdii bir yerel men almasn salar. Bu
menler arasndaki fark grebilmek iin veritaban penceresinde farkl
nesneleri sa-tklayn.
Ve !ar"m
Access 2000 ile altnz srada ne yapyor olursanz olun, klavyede
F1 dmesine basarak, yardm dosyasn aabilirsiniz. Ofis Yardmcs
ad verilen simge, o anda yapmakta olduunuz ilemle ilgili bir ka
hazr yardm konusu balnn yer ald ve bunlar yeterli deilse kendi
sorunuzu yazmanza imkan veren bir diyalog kutusu aacaktr.
Ofis 2000 ailesi programlarnn yardm dosyalarnda yaplan yenileme
sonucu artk yardm istediiniz konuyu mutlaka yardm dosyasnn
ifreli ifadeleriyle yazmanz gerekmiyor. Bu kutuya normal bir soru
yazabilirsiniz. Aratr dmesini tkladnzda, byk bir ihtimalle tam
aradnz konuya uygun bir baln yer ald bir ka yardm konusu
liste halinde karnza gelecektir. Ofis Yardmcsnn diyalog
kutusundaki Seenekler dmesini tklarsanz, Yardmc iin farkl
simgeler seebilirsiniz.
Ofis Yardmcsnn salad hzl yardm yeterli olmad anlarda, arama
ve dizinden geme gibi dier baz imkanlar olan yardm kutusunu
aabilirsiniz. Bunun iin Yardm mensnden Microsoft Access Yardm
maddesini semeniz gerekir.
Yardm gereken konunun anahtar kelimelerinin ne olabilecei hakknda
phede iseniz, bu kutuda Iindekiler sekmesini tklayarak btn
yardm konularn ana balklar halinde inceleyebilirsiniz. Bu kutuda
ikinci sekme olan, Cevap Sihirbaz ise Ofis Yardmcs gibi, dzgn bir
Trke soruyu anlayabilir! (Kurulu Windows sisteminizin varsaylan dili
Trke deilse, Ofis Asistan, soru yazmanza imkan veren kutuyu
grntlemeyecektir.) Dizin ise kelime aratmak iin kullanlr. Bunu iki
ayr ekilde yapabilirsiniz. nce arama yaplmasn istediiniz kelime
veya kelimeleri arama kutusuna yazn. Access 2000, kendi dizininde
buraya yazdnz kelimelerle ilgili grdklerini iki numaral kutuya
yazacaktr. Isterseniz bu kutudaki bir kelimeyi de iaretleyebilirsiniz.
Sonra Ara dmesini tklayn. Iinde yazdnz veya setiiniz
kelimelerin getii yardm metinlerinin balklar nc kutuda
sralanacaktr. Bu kutudaki balklardan size uygun grneni iki kere
8
tklayn; yardm metni sadaki erevede grntlenecektir. Yardm
kutusunun kendi ara ubuundaki yazc simgesini tklayarak,
grntlediiniz metni yazcya gnderebilirsiniz; ileri-geri simgelerini
tklayarak nceki ve sonraki yardm metinleri arasnda gidip-
gelebilirsiniz.
imdi Access 2000in yzn tanm oldunuz. Aa yukar hangi
dmenin ne yapacan biliyorsunuz. imdi sra Accesse bunlar
yaptrtmaya geldi
Access 2000i tandk diye hemen veri tablolar oluturmak ve onlarla
sihirbazlk yapmak iin henz erken. nce veritaban planlama
konusundan sz etmemiz gerekiyor. Dikkatlice planlanmam bir
veritaban kullancya yarardan ok zarar getirir.
Veri planlama, daha sonra verinin nerede ve nasl kullanlacana
dayanr. Imkansz olmamakla birlikte ok az veritaban ilk amacnn
dnda kullanlabilecek hale getirilebilir. Iyi bir planlama ise nce
veritaban terimlerine aina olmay gerektirir. imdi ksaca bu terimleri
ele alalm.
Veri (e Alan
Access 2000 ile kaydedeceiniz ve kullanacanz bilgilere veri denir.
Access asndan veriler, ait olduklar alann trnde saylr. Bir alan
say ieriyorsa, 123456789 saydr. Bir alan metin ieriyorsa
123456789 metindir. Access 2000de verileriniz u trlerden birine
girmek zorundadr:
Metin: Rakam, harf veya iaretlerden oluan ve 255 karakter
geniliinde bir alandr. Metin olarak tayin edilmi bir alana yazlan
rakamlar, say ilemi grmez; yani aritmetik ileme konu olamaz.
Metin alanlar, belirlediiniz (nasl belirleyeceimize sonra geleceiz)
geniliin stnde karakter tutamazlar. Sz gelimi bir metin alann 8
karakter boyutunda oluturduysanz, bunun iine Mustafa Durcan
yazamazsnz. Iyi bir veritaban tasarm, daima gerektiinden biraz
fazla geni boyut tayinini gerektirir.
)ot: Metin alan olmakla birlikte, 64 bin karakter alabilir.
#ay: Her trl aritmetik ileme konu olabilecek saylar tutar.
*ari+,#aat: Belirlemenize gre, tarih veya saat veya her ikisini birden
tutabilen zel bir alandr.
Para -irimi: Trk liras, Dolar, Alman Mark, Japon Yeni ve dnyada
bulunabilecek hemen hemen btn para birimlerine tayinh edilebilecek
9
zel bir alandr. Para birimi verilerinizi gireceiniz alann Currency
olmas, Access 2000in bu verilerle para biriminin gerektirdii biimde
hesap yapmasn salar.
Otomati. #ay: Access 2000 tarafndan artan ekilde otomatik olarak
doldurulan bir alandr. Bir veritabannda her bir kaydn (satrn)
dierlerinden mutlaka ayrc bir nitelii olmas gerekir. Hereyiyle ayn
iki kayt, otomatik say alannn farkll sayesinde birbirinden
ayrlabilir.
/(et,0ayr: Iindeki deer Evet veya Hayr ya da Doru veya Yanl
olabilen, mantksal ilemlerde kullanlan bir alandr.
O1/ )esnesi: Access 2000in veritabannda bir baka program
tarafndan oluturulmu nesnelere yervermenizi salayan alan trdr.
2&3r: Internet sitelerinde bulunan sayfalarn adresi (URL), Access
2000 tarafndan balant salanacak biimde tutulabilir.
Arama #i+irbaz: Bir alana dorudan vergi girmek yerine, Accessin
Arama Sihirbaz yardmyla bu veriyi bir tablodan veya sorgu
sonucundan semesini salayabilirsiniz.
Her Rakam Say Deildir
Sk kullanacanz baz bilgilerin alan trleri yle olmaldr:
A"4 soya": Metin
A"res: Metin
2a34 a3artman "aire no: Metin
*eleon no: Metin
/le.troni. a"res: Metin
Ayl. 5elir4 iyat4 tutar: Para birimi
!a6: Say
Personel says: Say
7eb #itesi : Balant
2ayt
Veritabanndaki bir birim bilgi kmesine kayt denir. rnein okuldaki
derslerinizde snvlarda, devlerde aldnz notlar tutan bir veritaban
tasarlyorsanz, her bir ders bir kayt olabilir. Buna karlk bir
retimenin snfndaki renciler iin tuttuu veritabannda, her bir
renci bir kayt olabilir. Access ile kendinize bir adres defteri
yapyorsanz, her kii veya firma bir kayttr. Veri alanlarnz
belirlerken, baz alanlar bo olabilir eklinde tanmlamsanz, telefon
defterinizdeki her kaydn her alan dolu olmayabilir; rnein baz
kiilerin faks numaras veya elektronik posta adresi olmayabilir. Buna
karlk veri alanlarn belirlerken baz alanlara bo olma yasa
10
getirmiseniz, tablolarnz doldururken Access 2000 bu alana mutlaka
alann niteliine uygun bir deer girmenizi art koacaktr.
*ablo
Tablo, (bo veya dolu) ayn alanlara sahip kaytlar kmesidir.
Notlarnz tuttuunuz dosyada 1999-2000 ders yl notlarnz bir tablo
oluturabilir. Bir retmen iin Lise 3 Trk Edebiyat snfndaki
renciler bir tabloda toplanabilir. Fakat retmen isterse kz ve erkek
rencileri ayn tablolara da alabilir. Daha sonra deineceiz, bir
veritabannda ayn kiiye, ayn snfa, yani ayn birime ait kaytlarn
tm tek tabloda bulunmayabilir. Bu sebeple, tablo dendii zaman,
sadece birbirine benzeyen verileri olan kayt kmesi aklmza
gelmelidir. Burada birbirine benzeyen tanmna dikkat edin: Diyelim ki
elimizde kiilik bir bilgi kmesi var. Bu kiiye ait bilgileri, ad,
soyad ve cinsiyeti diye alanda toplamaya karar verdik. Bu kiinin
de bu haneye yazlacak bilgisi benzer bilgilerdir. Bilgilerin ierikli ok
farkl olabilir; birinin ad Mustafa, dierinin Osman, ncsnn ise
Vildan olabilir. Ilk ikisi iin tablomuyaz erkek, ncs iin kadn
yazmamz gerekebilir. Fakat bu kii bir arada, bir tablo oluturabilir.
Veritaban
eitli tablolardan oluan ve bir Access 2000 dosyay halinde toplanan
bilgi kmesine veritaban deriz. Bir veritabannn iinde birden fazla
tablo bulunabilir. Bu tablolar birbiri ilikilendirilmi olabilir;
ilikilendirilmemi olabilir. Bir veritabannda tablolar birbiri ile
ilikilendirilmemi ise buna dz veritaban, tablolar ilikilendirilmi ise
(doru bildiniz!) ilikilendirilmi veritaban denir. Eer veritaban
tasarmnn bir tek pf noktas varsa, o da ilikilendirilmi tablo
meselesini kavramaktr.
Dz Veritaban: Bir tablonun btn alanlarna dair btn bilgiler kendi
iinde ise bu tabloya dz tablo, bu dosyaya dz dosya ve bu
veritabanna da dz veritaban denir. Diyelim ki elimizde, Ad,
Adresi ve Telefon numaras alanlarn ieren bir tablo var. Ve
diyelim ki Mustafann 1, Osmann 2, Vildann da 3 telefonu var. Bu
durumda Mustafa listemize bir kere, Osman iki kere, Vildan ise kere
yazlacak demektir. Dz tablolarda tekrarlar olur. Ilikilendirilmi
Veritaban: Dz tablolardaki tekrar nlemek ve bylece veritabannn
daha az yer tutmasn dolaysyla sorgularn daha hzl icra edilmesini
salamak amacyla, tablolar ilikilendiririz. Yukardaki rnee
dnersek, Osmann adn ve adresini iki, Vildann adn ve adresini
kere gstermek yerine, btn kiileri bir tabloda adlar ve adresleri ile
11
toplar, bir dier tabloya ise telefon numaralarn yazan ve her bir
numaray kiiler tablosunda bir kaytla ilikilendirirsek, her kisini de
veritabanmz dosya olarak ok daha az yer tutar.
Bunu Anahtar alan veya Birincil anahtar (Primary key) adn
verdiimiz teknikle salarz. Her tabloda her bir kayd dierlerinden
benzersiz hale getiren, yani dier hi bir satrda ayns bulunmayan bir
alan olmaldr. Bu nitelikteki bir alan Birincil Anahtar olarak tayin
edebiliriz. Ilikilendirilmi bir veritabannda, her bir kayt, bir alanndan
dier bir tabloya balanr. Bu balamann kaytlarn benzersiz
alanlarndan yaplmas yanl balar nleyecektir. Yine yukardaki
rnee dnelim. Mustafaya 1, Osmana 2 ve Vildana 3 numaral kii
diyelim; Elimizdeki btn telefon numaralarn altalta yazar (telefon
numaralarn kayt yani satr olarak dnn) ve karlarna ait
olduklar kiinin numarasn yazarsak, her bir telefonun kime ait
olduunu kolayca buluruz. Kolayca tabi szn gelii; fakat bu
durumda veri taban dosyamz ok daha az yer tutar.
Mera.ls iin not: *ablolarnz )ormal Mi$
Ilikilendirilmi veritaban dosyas daha az yer tutmakla birlikte,
veritaban tablolarmz ilikilendirmemizin tek sebebi bu deildir.
Haziran 1970te Edgar Codd adl bilgisayar mhendisi, elektronik veri
bankalarnn devasa boyutlara ulamasn fakat yine de kk bir
terminalde ilenebilmesini salayan bu modeli ortaya attnda, btn
veritabanlar, rnein, Ad, Soyad, Adresi, TelNo1, TelNo2, TelNo3..
eklinde fazlalk ve boluk ieren dz, birbiri ardna disket yazlm
kaytlard. Codd, veri paracklarn, rnein kiino=telno eklinde
ad=deer iftleri halinde yazlmasn nerdi. Bu bilgisayarn ana
ilemcisinin (CPU) daha hzl hesap yapmasn salad gibi insan
hatas faktrn de azaltyordu. (Ayn kiinin telefon numaras iin
ayr yerdeki adresinin de dzeltilmesi yerine bunu bir yerde yapmak
daha gvenli!)
Coddn sistemi, verilerin tutarlln da salyordu. Veritaban
dosyalarnda bilgi tutarll, bir veritabannda ad=deer eklinde btn
iftlerin bir Birincil Anahtar dediimiz ada ve bu adn tabloda baka
hi bir kaytta bulunmayan bir deere sahip olmas gerekir. (nk
veritaban ile alrken ad=deer iftlerini baka trl tanmamz
mmkn deildir. Bu disk zerine yazlrken verilerimizin sra veya yer
kaygs gtmeden yazlmasn salar.) Bylece hi bir kayda ait
olmayan ad=deer ifti bulunmuyor, ve hi bir kaydn eksik alan
olmuyor (bo olabilir; bu eksik demek deildir.) Coddn bu buluu
12
veri-ilem alannda devrim saylr. Coddun zamanla gelitirilen
modelinin be ilkesi vardr:
1. Her bir deer mstakil olmaldr (Bir kutuda telefon numaras
birden bulunmamaldr).
2. Ad=deer iftleri Anahtar Deer (Birincil Anahtar) vastasyla
birletirildiinde ortaya baka bir kayda benzemeyen kayt kmaldr.
(Aksi taktirde Birincil Anahtar zgn demek deildir!)
3. Bir deerin hangi kayda ait olduu sadece bir Anahtar Deere
(Birincil Anahtara) baklarak bilinmelidir. (Bir telefonun ait olduu
kiiyi belirlemek iin hem adna, hem adresine bakmak zorunda isek,
ayn adda birden fazla kii var demektir; kendimize yeni bir Birincil
Anahtar bulmak zorundayz.)
4. Hi bir kayt, ayn ad iin birden fazla deer almamaldr. (Bir kiinin
be ocuu varsa, 3 olu, kz olamaz!)
5. Bir tablo, artk tekrar ikiye veya daha fazla tabloya blnemeyecek
kadar fazlalktan arndrlm olmaldr.
Bu be ilkeye tablolarn Normalletirilme Kurallar, buna uygun hale
getirilmi tablolara Normal Tablolar ve ileme de Normalizasyon denir.
Basit bir adres defteri yaparken, herkese telefon, bir faks ve bir de
cep telefonu hanesi amak ve baz kiiler iin baz stunlar (alanlar)
bo brakmak daha kolay bir zm olabilir. Bununla birlikte daha
sonra uygulama programlarna veya Web sayfalarna temel olacak
veritabanlar gelitirirken, ilikilendirilmi tablolar kullanmak daha
doru olur. Ilikilendirmenin ilkelerinden, ilerde tablolarlarmzda iliki
kurarken sz edeceiz.
*ablo *asarm
Iyi bir veritaban tasarm, iyi dnlm tablo tasarm ile balar. Bu
ilke uygulamada u anlama gelir: Mouse iaretisini Access simgesi
zerine doru gtrmeden nce, elinize bolca kat, bir de kalem aln
ve balayn tablo tasarmna. (Kadnz kareli, kaleminiz de
kurunkalem olursa ve elinizin altnda bir de silgi bulunursa, tablo
tasarmnzn baarl olacan imdiden garanti ederim!) nce kada
bu veritaban projesinin sonunda ortaya kmasn istediiniz liste,
rapor ve dier ne trl belge varsa, hepsini balklar halinde yazn. Bu
kad nnze koyun ve ayr sayfalara buradaki her bir maddenin
kada dkldnde nasl grnmesini istiyorsanz o ekilde
grnmn izin. Istediiniz balklar, altbalklar, stunlar ve
satrlar belirtin. Sonra bu sayfalarda grdnz ekillere bakarak,
13
alanlar (stun balklarn) listeleyin. rnein, kendinize bir telefon
defteri-temas izelgesi hazrlyorsanz, alan tanmlarnz yle olabilir:
1. Sra no = otomatik say
2. Ad = metin, 20 karakter boyutunda, bo olamaz
3. Soyad = metin, 20 karakter boyutunda, bo olamaz
4. Adres Satr 1 = metin, 30 karakter boyutunda, bo olabilir
5. Adres Satr 2 = metin, 30 karakter boyutunda, bo olabilir
6. ehir = metin, 20 karakter boyutunda, bo olabilir
7. Posta kodu = metin, 5 karakter boyutunda, bo olabilir
8. lke = metin, 20 karakter boyutunda, bo olabilir
9. Doum tarihi = tarih (otomatik olarak boyutlanr), bo olabilir
10. Doum gnnde kart yollayacak mym= evet/hayr, bo olabilir
10. Einin Ad = metin 20 karakter boyutunda, bo olabilir
11. ocuk 1 Ad = metin 20 karakter boyutunda, bo olabilir
12. ocuk 2 Ad = metin 20 karakter boyutunda, bo olabilir
13. ocuk 3 Ad = metin 20 karakter boyutunda, bo olabilir
14. ocuk 4 Ad = metin 20 karakter boyutunda, bo olabilir
15. Ev telefon no = metin, xxxx-xxx-xxxx biiminde, bo olabilir
16. I telefon no = metin, xxxx-xxx-xxxx biiminde, bo olabilir
17. Cep telefon no = metin, xxxx-xxx-xxxx biiminde, bo olabilir
18. Faks no = metin, xxxx-xxx-xxxx biiminde, bo olabilir
19. En son ne zaman grtm = tarih, bo olabilir
20. Son gncelleme tarihi = tarih, bo olamaz
Alan listesini tamamladktan sonra bu alanlar, bir tabloda m
toplanmal, birden fazla tabloya m blnmeli sorusuna cevap verin.
Yukardaki rnekte iki noktadaki aksakl grm olmalsnz. Birinci
aksaklk ocuklarla, ikinci aksaklk telefon numaralaryla ilgili. nce
birinci sorunu ele alalm. Be ocuklu bir dostunuzun beinci ocuu bu
listeye yazlamaz. O halde buradaki 16 alan en azndan iki tabloya
blnmeli; ocuklara ilikin olan alanlar dndaki btn alanlar
Aileler tablosunda toplanmal, btn ocuklar ocuklar adl tabloda
yer almaldr. ocuklar tablosunun alanlar ise yle olabilir:
1. Sra no = otomatik say
2. ocuun ad = metin, 20 karakter boyutunda, bo olamaz
3. ocuun ailesi kimlii = metin, 20 karakter, bo olamaz
imdi burada baka bir sorun var: ocuun aile kimlii, babasnn veya
annesinin soyad olacaksa ve ayn soyad tayan iki dostumuz varsa,
ocuun kime ait olduunu bilemeyiz. Aslnda bu sorun, ortaya baka
bir sorun daha kartyor: diyelim ki ayn adda iki dostumuz var;
ikisinin de e ve ocuk durumu ile adreslerini ve telefon numaralarna
14
ilikin elimizdeki bilgilerin ayn olduunu (mesela bu bilgiler elimizde
yok ve dolayslya bu stunlar bo!) varsayalm. Bu iki kiiyi listeye
benzersiz kayt olarak nasl kaydedebiliriz? Otomatik sra numarasn
birincil anahtar yaparak! Her aileye ait kaydn benzersiz olmasn
salayan otomatik sra numarasn aile tablosunda birincil anahtar
yaparsak, daha sonra ocuk tabllosuyla iliki salayan anahtar olarak
kullanabiliriz. Bunu grsel olarak ifade edelim:
imdilik bu tablolarn oluturulaca zerinde durmayalm. Burada
sadece kavramsal olarak ocuklarla aileleri arasnda ba kurmaya
alyoruz. Aileler tablosunda Aile Sra No adl bir stun aar ve bu
stunu Accesse Otomatik Say alan olarak otomatik ekilde
doldurtabiliriz. Sonra, ocuklar kaydettiimiz tabloda, her ocuun
ailesini, aile tablosundaki Aile Sra No bilgisini tekrar ederek
belirtebiliriz. (Nasln zerinde durmuyoruz!) Diyelim ki Masum Sayan
adl iki arkadamzn ikier ocuu var. 5 numaral aileye mensup
Masum Sayan ile 6 numaral aile mensup Masum Sayann ocuklar da
ayn Aile Sra Nosunu aldklar anda, gereksiz bilgi ieren veya bilgi
kaybna yol aan bir tablo tasarmndan kurtulmu, yani Aile
tablosunda ocuk 1, ocuk 2,.. ocuk x eklinde kimi ailede bo
kalacak, kimi ailede yetmeyecek stunlar amam oluruz.
Yukarda muhtemel alanlarmzn listesini dktmzde, iki sorunla
karlatmz sylemitik. Birinci sorun ocuklarla ilgiliydi. Onu
zdk. Fakat ayn durum, telefon numaralar iin de var. Birden fazla
ev, i, faks veya cep telefonu olanlara ilikin tm telefon numaralarn
tablomuza ileyebilmek iin mutlaka ocuk tablosunu eklediimiz gibi,
veritabanmza ideal olarak drt ayr telefon numaralar tablosu (ev, i,
faks ve cep telefonlar tablolar) ekleyip, bunlara da Aile Sra No stunu
ap, her telefon numaras ile telefonun sahibini ilikilendirebiliriz.
Bylece tablo tasarmnn kat zerindeki blm bitmi oluyor.
Nihayet sra Accessi altrmaya geldi.
Access'te Veritaban Olu6turma
Accessi altrdktan sonra, bo bir veritaban oluturalm. Fakat bu
arada Access7in bo veritaban ablolarn tanyalm. Kullandnz
Accessin baka bir kullanc tarafndan ayarlar deitirilmemise,
ald anda karnza ne yapmak istediinizi soran ve dosya semenizi
salayan diyalog kutusu gelecektir. Bu kutuda Access Veritaban
sihirbazlar, sayfalar ve projeleri maddesini iaretleyerek Tamam
tklayn.
15
Accessin ayarlar deitirilerek bu kutunun almas nlenmise,
karnzda tamamen bo bir Access penceresi de grebilirsiniz. Bu
durumda Dosya mensnden Yeni maddesini seerek (veya klavyede
Ctrl tuunu tutarak ve N tuuna basarak), bo bir veritaban
oluturmanz salayacak diyalog kutusunun almasn
salayabilirsiniz. Yeni diyalog kutusu aldnda Veritaban sekmesini
tklayn.
Accessi tasarlayan uzmanlar, eitli kullanm alanlar bulunan on ayr
veritaban ablonu hazrlam bulunuyorlar. Access ile veritaban
projelerinde byk bir ihtimalle bu ablonlar hemen her ihtiyacnz
karlayacaktr. Accessi tanmak iin bu ablolarn teker teker hepsini
seip, oluturulmasn nerdii dosyalarn oluturulmasn salayp,
sonra ablon sihirbaznn her bir veritabannda ne gibi tablolar atn,
bu tablolara ne gibi grevler yklediini, ne gibi alanlar oluturduunu
gzlemenizde yarar var. Veritaban yapan Access sihirbazlarnn bir
dier marifeti veri girme ve rapor alma ilerinde kullanacanz formlar
da oluturmaktr. Bu formlar inceleyerek, ilerde kendi formlarnz
tasarlamakta kullanacanz ipular edinebilirsiniz. Ayrca Access 2000,
sadece tablolar, formlar ve raporlar oluturmakla kalmayacak, bu
veritabann, sanki kendi bana bir program gibi, kullanmanz
salayacak grafik arayz bile ina edecektir. Sihirbazlar kullanarak,
tablolar doldurulmaya, formlar kullanlmaya ve raporlar baskya hazr
veritabanlarn sk sk oluturacaksnz; fakat kimi zaman bu tablolarda,
formlarda veya raporlarda yeni bir alan eklemek, veya var olan bir
alan kaldrmak isteyebilirsiniz. Bunu yapabilmek iin, Accessin bu
nesnelerini nasl oluturabileceimizi, nasl dzenleyebileceimizi veya
deitirebileceimizi bilmemiz gerekir. imdi bir rnek zerinde bunu
birlikte yapalm.
Alan *rleri
Access Sihirbazlaryla ilgili keif turunu bitirdiinizde, Yeni diyalog
kutusunda Bo Access Veritaban maddesini iaretleyip Tamam
tklayn. imdi, kendi veritabanmz kendimiz oluturmaya
balayabiliriz. Alacak diyalog kutusunda Genel sekmesinin seili
olmasna dikkat edin; ve Bo Veritaban simgesini ve Tamam tklayn;
Access 2000 `in nerdii vt1.mdb adn Adres Defteri.mdb olarak
(veya oluturmak zere yukarda kat-kalemle plann yaptnz
veritabanna uygun bir ad vererek) deitirin; yeni veritabannz
Veritaban penceresinde ilenmeye hazr bulacaksnz. Nesnelerden
Tablolarn seildiini, ve tablo oluturmak iin kullanabileceiniz
aracn ksayolunu gryorsunuz:
16
Bunlar, tasarm grnmnde, Sihirbaz kullanarak ve veri girerek tablo
oluturmanz salayan yntemlerdir. Madem ki Access 2000 ile tabir
yerinde ise sfrdan tablo oluturmaya karar verdik; o halde Tasarm
grnmnde tablo olutur maddesini tklayarak, tablo oluturma
penceresini an. Bu noktada yukarda tablo tasarmyla ilgili blmde
kendi veritabanmz planladysanz, bu planlar nnze ekin. Bu
altrmay yapmadysanz, rnek olarak ele aldmz Adres Defterini
birlikte oluturabiliriz.
Tasarm grnmde karnza gelen tablo biimindeki ara,
tablonuzdaki alanlarn adlarn, zellikleri ve doldurulmas iin gerekli
ilemleri belirteceiniz yerdir. Aile tablosunu oluturmak iin imlecinizi
Alan Ad stununun birinci satrnn iine getirin ve AileSraNo yazn.
Kendi veritabanz oluturuyorsanz, herhangi bir tablodan ie
balayabilirsiniz; bu tablolardan birini sein ve birinci stunun adn
yazn.
*r.e 2ara.ter 2ullanr.en8
Access 2000, dier Ofis programlar, sadece menleri, diyalog kutular
ve yarndm dosyalar bakmndan Trke olmakla kalmayp, ayn
zamanda ieriinde de Unicodeu destekleyen bir programdr. Bu
bakmdan tablolarnzda, formlarnzda, raporlarnzda, makrolarnzda
ve hatta kullanlmaya hazr fonksiyonlarda, ierik ve balk olarak
Trke karakter kullanabilirsiniz.
Hemen her trl bilgi ilem rnnn Internette kullanld veya
Internet malzemesi olarak deerlendirildirildii gnmzde
veritabanlarna dayanan Web uygulamalar da hzla yaygn hale
gelirken, hazrlayacanz Access dosyalarnn Microsoft ODBC (Open
Database Connectivity) teknii ile Web Servera yklenip
yklenmeyeceini hesaba katmalsnz. Access dosyalarnz, ODBC
yoluyla bir Web Servera veri kayna olarak tantlacaksa, Web Server
programnn ve ona evsahiplii yapan iletim sisteminin Unicode
uyumlu olup olmad, sizin kullandnz Alan adlarnn doru okunup
okunmamasn da belirler. Veritabannn ierii, sonu itibariyle Web
sayfasnn unsurlar arasnda Browsera gnderilecek ve orada
yorumlanacaktr. Bugn sadece Netscape browser programnn baz
iletim ortamlarnda kullanlan srmleri Unicode okuyamaz. Bu
browserlar kullanan Internet ziyaretileri, sayfanzn baz unsurlarn
Trke karakterlerle gremezler. Fakat alan adlarnzdaki Trke
karakterlere gnderme yapan programlar ve Scriptler, bu adlar
bulamadklar taktirde, veri-ynlendirmeli Web uygulamalarnz,
rnein ASP programlarnz hata mesaj verirler.
17
Veritabanlarnz ne tr Web Servera ykleyeceinizi bilmiyorsanz,
alan adlarnda Trke karakter kullanmaktan kann.
Yukardaki rnek planda bu stunun adnn Aile Sra No olmasn
kararlatrdmz halde, burada alan adnda boluk brakmadmza
dikkat etmi olmalsnz. Bu, daha sonra yazacamz veri seme
komutlarnn alan adlarnda boluk istememesinden kaynaklanyor.
Sonra klavyenizde sekme tuuna basarak, imlecin Veri Tr stununa
gelmesini salayn ve burada beliren aa ok simgesini tklayarak
(veya klavyede Alt tuunu tutarak ve aa ok tuuna basarak) veri
trleri listesini an:
Burada grdnz veri trlerini tanyorsunuz; bizim rneimizde
birinci alanmza Access 2000in otomatik olarak sra numaras
vermesini istediimiz iin burada Otomatik Say trn seiyoruz (Siz,
kendi plannza uygun bir tr seebilirsiniz).
Alan 9zelli.leri
Tablo oluturma penceresinin st tarafnda yaptnz seime gre,
pencerenin Alan zellikleri balkl alt blmndeki bilgilerin deitiine
dikkat edin. Buradaki kontrollerin ou Access ile veritaban oluturma
beceriniz arttka kullanlacak niteliktedir. Alan zellikleri, o alandaki
bilgilerin boyut, renk veya konumu gibi niteliklerini ve gizli olmek-
grnr olmak gibi davran biimlerini tanmlar. Daha sonra
verilerimizi biimlendirirken bu kontrollerden yararlanacaz. Baz
alanlarn baz zellikleri yoktur. rnein Alan Boyutu zellii sadece
metin, say ve otomatik say alanlar iin geerlidir. imdi alan
zelliklerind sk kullancaklarmz ele alalm:
Metin Alanlar iin alan boyutu: 0 ile 255 karakter arasnda
olmaldr. Dier alanlarn boyut snrlamas yoktur. (Varsaylan boyut:
50)
#ay alanlar iin alan boyutu: Say olarak belirlediiniz alann
boyutunu, Alan zellikleri blmnde Alan boyutu satrnn sandaki
aa oku tklayarak, u seenekler arasndan seebilirsiniz: Byte,
ondalk, tamsay, uzun tamsay, tek, ift, yineleme kimlii (Replication
ID).
#aylar (e Paralar"a :zunlu.
18
Veri alannz Otomatik Say ise, alan boyutu ya uzun tamsay, ya da
yineleme kimlii ad verilen otomatik deer olur. Alan trnz Say
ise u alan boyutlarndan birini seebilirsiniz.
-yte 0dan 255e kadar tam say tutar.
On"al. (.adp) dosyas olarak -10^38 -1den 10^38 -1e kadar,
(.mdb) dosylas olarak -10^28 -1den 10^28 -1 `e kadar say tutar;
virglden sonra 28 basamak gsterir.
*amsay -32,768den 32,767e kadar kesirsiz say tutar.
:zun tamsay (Varsaylan) -2,147,483,648den 2,147,483,647e
kadar kesirsiz say tutar.
*e. -3.402823E38den-1.401298E-45e kadar negatif, 1.401298E-
45den 3.402823E38e kaedar pozitif deer tutar; 7 basamakl ondalk
blm olabilir.
it -1.79769313486231E308den -4.94065645841247E-324e kadar
negatif, 1.79769313486231E308den 4.94065645841247E-324e
kadar pozitif say tutar; 15 basamakl ondalk blm olabilir.
;e3lication <D Kresel benzersiz tanmlayc (Globally unique
identifier--GUID)
eritaban dosyalarnzn kolay alp kapanmas ve veriilemin yeterince
hzl yaplabilmesi iin alanlarnz tutacaklar en byk saydan daha
fazsla say tutabilir ekilde tanmlamayn. Dier taraftan alannz
girebileceiniz deerden kk tutarsanz, bu kez girdiiniz deerlerin
fazla gielen ksmlar kesilecek, yani verileriniz tahrip olacaktr.
y ve para birimi verilerinizi hazr biimlendirme ablonu ile deil de
kendiniz biimlendirme ifadesi yazarak biimlendirmek isterseniz, u
ayarlar yapabilirsiniz (bu ifadeleri, Alan zellikleri blmnde biim
kutusuna yazacaksnz):
=>?=@>>!o. Normal deerleri normal ekilde, negatif deerleri
parantez iinde gsterir; bo brakldnda yerine Yok yazar.
A=.=>B=.=>=.= Art ve eksi iaretini gsterir,; bo brakldnda yerine
0.0 yazar.
-iim: Siz nasl girerseniz girin verinin tabloda (ve daha sonra bu
tablodan yaplacak ekilde oluturulacak raporlarda ve formlarda) nasl
grntleneceini belirler. Ayrca buraya yazacanz biim komutlar,
girilebilecek verinin niteliini de tayin eder. (Ayrntl biim ifadeleri iin
Ek 1e baknz.)
%iri6 mas.esi: Veritabanza verileri girerken, nce girii
kolaylatrmak, daha sonra da veri ilem srasnda verilerin istediiniz
19
biimde olmasn ve dolaysyla ilemi kolaylatrmak amaclya, veri
giriini belirli bir biim kuralna balayabilirsiniz. Sz gelimi telefon
numaralarnn daima (0555) 555-5555 gibi girilmesini salamak iin bir
metin alanna bunu salayacak giri maskesi ad verilen komut
ifadesini yazabilirsiniz. Bunun iin giri maskesi olarak (9999) 000
0000;;_ yazmanz gerekir. Fakat Access 2000, sk kullanlan, telefon
numaras, Vergi dairesi ve numaras, posta kodu, sosyal sigortalar
numaras, sigorta kod numaras, parola, ve eitli tarih ve saat
biimlerine uygun giri maskelerini hazr veriyor.
Bu hazr maskeleri bir alannzn Alan zellikleri blmne katmak iin,
giri maskesi satrnn sandaki nokta simgesini tklayn; alacak
Giri Maskesi Sihirbaznda arzu ettiiniz giri biimini sein. Bir bilginin
tablolara veya formlara belirli bir maske ile girilmesi, mutlaka o ekilde
kaydedilecei anlamna gelmez. zellikle parantez, kesme ve benzeri
iaretleri kullandnz giri maskelerini veritaban dosyaya yazlrken
kaydettirmeniz gerekmez; bu dosya boyutunda tasarruf salar. Daha
sonra raporlarnzda veya Access dosyalarndan baka programlar iin
veri ihra ederken bu iaretlerin yeniden konulmasn salayabilirsiniz.
%eerli. 2ural4 5eerli. metni: Veri ilemin salkl olabilmesi iin
girilen verilerin gerekten girilmesi gereken trde olmas arttr.
Access, veri girilmesi srasnda girilen deerin geerliliini snayabilir ve
veri gireni uyarr. Veri giriinde uyulacak kurallar Geerlik Kural
kutusunda, geirli olmayan veri giriinde grntlenecek uyar metnini
ise geerlik metni kutusunda belirtirsiniz. (Bu kutularn etiketini
Geerlilik eklinde greceksiniz. Bu, Trke iml ilkelerine aykrdr.)
Geerlik kurallar kutusuna yazabileceiniz baz ifade rnekleri unlar
olabilir:
CD = Girilen deer sfrdan farkl olmaldr
D E=== Or <s )ull Girilen deer ya bo olmaldr, ya da 1000den
byk olmaldr.
1i.e FA$$$$F Girilen deer 5 karakter boyutunda olmaldr ve "A" harfi
ile balamaldr.
DG HE,E,IJH An" CHE,E,IKH Girilen deer 1996 iinde olmaldr.
Geerlik metni ise, geerli olmayan bir deer girildiinde, kullancnn
uyarlmasnda kullanlacak metindir. Buraya yazacanz metin,
kullancya doru veri biimi hakknda ksa fakat anlaml bilgi
vermelidir.
20
%ere.li: Bu zelliin sanda belirecek aa oka basarak, Evet veya
Hayr seebilirsiniz. Bir alan Gerekli hale getirirseniz, veri tablosunu
doldururken, Access bu alann bo braklmasna izin vermez.
Yukardaki planlama rneinde baz alanlarn niteliini kada dkerken
yanlarna Bo braklabilir, bazlarna ise Bo braklamaz notunu
koyduumuzu hatrlyor olmalsnz. Bo braklabilir alanlar iin bu
kutuya Hayr (yani doldurulmas gerekli deil!), bo braklamaz
alanlara ise Evet (yani doldurulmas gerekli!) kaydn koymamz
gerekir.
#r uzunlu. Lzni: Bo braklmasn nlediiniz, yani gerekli alanlarn
boyutu sizin iin nem tayor olabilir. Doldurulmas gerekli alanlarn
doru doldurulmasn salamann bir yolu, alana girilecek deerin
boyunun sfr olmasn nlemektir. Yukardaki rnekte gelitirdiimiz
veritabannn kullanlabilir olmas iin en azndan kiilerin ad ve
soyadlarnn tabloda yeralmas gerekir; aksi taktirde ortada tablo
denecek bir ey bulunmaz. Soyad olmayan kiilerin ise adlar ile
yetinemeyiz. O halde bu iki alan hem gerekli yapar, hem de sfr
uzunluk izni vermezsek, tablomuzu doldururken isteyerek veya kazayla
bu alanlar bo brakmamz tehlikesini nlemi oluruz.
#ral ?/n"e.s@: Access ile oluturduumuz veritabanlarn ilerken
yapacamz ilerin banda, tablolarmzdan belirli ltlere gre
semeler (sorgular) yaptrtmak gelecektir. Basit bir sorgunun hzla
tamamlanabilmesi iin Accessin tablolardaki alanlar nceden
endekslemesi yerinde olur. Bir alann Alan zellikleri blmnde Sral
kutusunun sandaki aa oku tklarsanz, Hayr seeneinin yan
sra iki ayr Evet seenei bulunduunu greceksiniz. Hayr
seenei, bu alann nceden endekslenmesini nler. Bu alandaki
verilerin endekslenmesini salayan dier iki seenekten birincisi, Evet
(Yineleme Var), Accessin oluturaca endekste, bu deerden birden
fazla olmasna imkan verir. Bizim rneimizde, kii ad ve
soyadlarndan birden fazla olmas ihtimali ngrldne gre,
endeksimizin tekrara izin vermesi gerekir. Bir alan, tablodaki kaytlarn
benzersiz olmasn salayan Birincil Anahtar alan olarak tayin
edildiyse, tekrara izin verilmemesi gerekir. Bunun iin, bu kutudaki
endeksleme yaptrtan ikinci seenei, Evet (Yineleme Yok) maddesini
sememiz gerekir.
:nico"e #.6trma: Access 2000, Ofis 2000 ailesinin dier yeleri
gibi Unicode-uyumlu, yani iinde 65 bin 536 adet harf, rakam ve iaret
bulunan yaz tipi (font) sistemini destekler. Unicode uyumlu olmayan
programlar ise sadece 256 karakter ieren fontlar kullanabilirler.
Metin, not ve kpr (Web adres balants) trndeki verilerinizde
21
Trke karakter bulunuyorsa, alan zelliinde Unicode Sktrmann
Evet olmas gerekir. Bu durumda Access, bu alandaki veriyi
kaydederken her bir karakter iin gerekli alan (2 byte) ayracaktr. Bu
tr alanlarnzda Trke karakter yoksa, Access dosyasnn bykl
etkilenmeyecektir. Dolaysyla Trke veritaban olutururken bu deeri
srekli Evet ayarnda tutmak dosya bykl bakmndan olumsuz
bir etki yapmaz; sadece Trke karakterlerinizi korumu olursunuz.
Alan *anmlar
Tablo tasarmnda son nokta, tablolarmz bakalarnn da
kullanabileceini gznnde tutarak, tanm stununa gerekli
aklamalar yazmaktr. Tablolarmz bakasyla paylaacak olmasak
bile, bir sre sonra alanlarmzn ne amala oluturulduunu hatrlamak
zor olabilir. Buradaki gibi Ad, Soyad adn verdiimiz alanlarn
ilevini hatrlamakta sorun olmayaca dnlebilir. Fakat verilerin
baka tablolardan alnd durumlarda veya deerlerle ilgili uyarc
notlarn gerektii durumlarda, Tanm satrlarna yazacanz bilgiler ie
yarar. Tabloyu yaptysanz, tasarm grnmnde son ekli yle
olmal:
Arama #i+irbaz
Accesste veritaban oluturmann birinci admn attk: ilk tablomuzu
yaptk; alanlarn belirledik; alanlarn zelliklerini tayin ettik. Buradaki
rnei uyguluyorsanz, imdi ikinci bir tablo oluturmanz gerekir.
Bitmi tasarm grnmne bakarak, yukardaki bilgiler nda ikinci
tabloyu siz oluturabilir misiniz?
Burada dikkat edilecek tek nokta, AileSraNo adl alann ieriinin
doldurulmas iin gerekli ifadeyi Arama Sihirbazna yazdrtmaktr.
ocuklar tablosunun taramn grmnde ikinci alann adn yazdktan
sonra Veri Tr stununda seme okunu tklayn ve alan listeden
Arama Sihirbazn sein.
Arama Sihirbaznn birinci dayalog kutusu, bu alana girilecek
deerlerin mevcut bir tablo veya sorgu sonucundan m alnacan,
yoksa bu deerleri sizin dorudan m yazacanz belirler. Buradaki
rnekte, veritabanmzda ocuklar tablosunu doldururken, bu stunun
yannda bir seme oku belirmesini ve bu oku tkladmzda Aileler
tablosunda, Ailei Sra No alanna girilmi btn deerlerin
gsterilmesini istiyoruz. Baka bir deyile bu stuna girecek bilgileri,
Aileler tablosundan alacaz. O halde, Arama Sihirbaznn ilk diyalog
22
kutusunda Deerler tablo veya sorgudan alnsn maddesini
iaretleyerek, Ileri dmesini tklamamz gerekir.
Arama Sihirbaznn ikinci diyalog kutusu ise bir nceki tercihinize gre
ya veritabannzdaki btn tablo ve sorgularn listesini ierir ve siz bu
listeden veri alacanz tablo veya sorguyu seersiniz; ya da seme
yapacanz veri listesini oluturmanz iin kk bir tablo oluturma
arac alr.
Veri seme iini bir tablo veya sorgudan yapacaksanz bu tablo veyla
sorgunun adn seerek, Ileriyi tklayn. Veri seme iini kendi
vereceiniz deerlerle yapacaksanz, veri seme listesi diyalog
kutusunda veri seme listesinin tek stunlu olduunu greceksiniz;
seiminizi daha ok stunlu bir listeden yapmak istiyorsanz nce yeni
stun saysn yazn; sonra aadaki St1 atdl rnek stunun adn
tklayn; arzu ettiiniz kadar stun belirecektir; imdi silecek deerleri
bu stunlara ve satrlara girin ve Ileriyi tklayn. Her iki yolda da
Arama Sihirbaznn nc diyalog kutusunda, ya mevcut talo ve
sorgulardan setiiniz ya da kendi oluturduunuz deerli ieren
alanlar kullanlabilir alan olarak sralanacak ve Sonu tkladnzda
Arama Sihirbaz, tasarm penceresinin Alan zellikleri blmnde
Arama sekmesindeki deerleri dolduracaktr. (Ilerde arama ve sorgu
konusunda uzmanlatnzda bu deerleri siz de doldurabilirsiniz.
imdilik sadece Arama sekmesinde Satr Kaynak Tr ve Satr kayna
kutularna yazlan ifadeleri inceleyin ve Accessin tablolara ve tablolarn
alanlarna nasl gnderme yaptna dikkat edin.) Bu suretle
oluturduumuz otomatik deer seme imkann kullanmak zere
ocuklar tablosunu atmzda ve yeni bir girdi iin Aile Sra No
stununda bir satr tkladmzda, kutunun sa kenarnda bir seme
oku belirdiini grrz. Bu oku tkladmzda ise alan listede, bu ana
kadar Aile tablosunda Aile Sra No stuna girdiimiz btn deerleri
grrz.
Tablo tasarmn rendiimize gre, imdi tablolara veri girme, veri
arama ve tablolarn Access 2000 penceresi iinde grntlenme
yntemlerinden sz edebiliriz. Bir veritaban ile veri-ileme balamadan
nce verileri girmemiz gerekir!
Veri Dzenleme ?/"itin5@
Accesste belki de en kolay yapacanz i, tabloya veri girmek olsa
gerek: yeni oluturduunuz veya nceden mevcut bir tabloyu,
veritaban penceresinde an ve balayn stunlara ve satrlara
gnlnzden geenleri yazmaya. Fakat bunun daha kolay yollar da
23
var. nce veri tablomuzun ekrandaki penceresinde yapabileceimiz
grnm deiikliklerinden sz edelim. Veri tablosunu, adn iki kere
tklayarak (Aralar mensnden Seenekler maddesini ve Grnm
sekmesinde Tek tklatmada a seeneini seerek bunu
deitirebilirsiniz), veya tabloyu setikten sonra Veritaban
penceresinde A simgesini tklayarak aabilirsiniz. Bir tablonun adn
sa tklayp, alacak menden A maddesini de seebilirsiniz.
%&rnm
Atnz bir veri tablosunun stun genilii, o alandaki verilerin
tmn rahata okumanza engel oluyorsa, iki stun balnn
ortasndaki izgiyi Mouse iaretisi ile tutarak, saa veya sola
oynatarak, stun geniliini deitirebilirsiniz. Bu srada Mouse
iaretisi iki tarafnda ok bulunan dikey izgi eklini alr.
Ayn ekilde satrlarnzn yksekliini de satr balklarnn arasndaki
izgiyi Mouse iaretisiyle tutarak, artrabilir, azaltabilirsiniz. Bir
stunun geniliini deitirdiiniz zaman dier stunlarn genilikleri
etkilenmez; ancak bir satrn yksekliini deitirirseniz, btn
satrlarn ykseklii deimi olur. Stun geniliklerinin Access 2000
tarafndan otomatik olarak ve optimum lde ayarlanmasn salamak
iin stun balnn sa snr izgisini iki kere tklayabilirsiniz. Stun
genilikleri ve satr yksekliklerini, stunu ve satr seerek Biim
mensndeki ilgili maddeleri seerek de yapabilirsiniz. Mouse
iaretisini stun veya balnn zerine getirin ve tklayn (iareti
stun balnda iken imlecin ksa ve kaln bir aa ok ekline
dndn greceksiniz); imdi stun veya satr baln tklarsanz,
btn stun veya satr seilmi olur. Biim mensnden Satr
ykseklii veya Stun genilii maddesini seerek ve alacak diyalog
kutularna gerekli deerleri girerek, ayarlar deitirebilirsiniz.
Veri girmenizi ve verilenizi incelemenizi engelleyen, o srada ieriini
grmeniz gerekmeyen stunlar geici olarak gizleyebilirsiniz. Stunu
setikten sonra Biim mensnden Stunlar gizle maddesini
seerseniz, Access 2000 bu stunlar geici olarak ortadan kaldrr.
Yine Biim mensnden Stunlar gster maddesini seerek ve alacak
kutuda grntlenmesini istediiniz stunlarn adnn nne iaret
koyarak, yeniden grnmelerini salayabilirsiniz.
Veri 5irme
Her veri tablosunun son satr, yeni kayt girmeniz iin hazr saylr.
Yeni bir kayt girmek iin, stun balnda bir yldz simgesi bulunan
24
son satrn herhangi bir stununa tklayarak, klavyeden verilerinizi
girebilirsiniz. Ayn ii Ara buuunda Yeni Kayt simgesini tklayarak
da yapabilirsiniz.
Veri tablosu iinde kayttan kayda ve bir kaytta alandan alana
geebilmek iin, Mouse iaretisini arzu ettiiniz kutunun iinde
tklayabilirsiniz; klavyede ok tularna, veya sekme ve Enter tularna
basarak imleci arzu ettiiniz yere gtrebilirsiniz; bu tularn imleci
yeni alann bana m, sonuna m gtreceini Aralan mensnden
Seenekleri ve orada Klavye sekmesini seerek de belirleyebilirsiniz.
Ilmecin iinde bulunduu hcrenin satr balnda bir kalem simgesi
belirir; bu o satrn edit edilmeye (dzenlenmeye, deitirilmeye, ek
yaplmaya) hazr olduunu gsterir. Bir mcrede varolan verinin
nne, arkasna, iine yeni veri yazabilirsiniz; mevcut veriyi
silebilirsiniz; baka ylerde Windows panosuna kopyaladnz metin,
say veya dier unsurlar Access hcrelerinize yaptrabilirsiniz.
Windows Panosuna kopyalanm unsur Access 2000 veritabannda
bulunmas imkan olmayan bir unsur ise Dzenr mensnde
yaptrmayla ilgili maddeler etkin olmaz; klavlede Ctrl+V tuuna
basmanz da bu eyi Acces veri tablosuna yaptrmaz.
Bir kayd (satr) veya bir alan (stunu) silmek iin Dzen mensnden
Kayt Sil ve Stun Sil maddelerini semeniz yeter. Aralar mensnder
Seenekleri ve Dzen/Bul sekmesinde Onayla blmnde hangi silme
ilemleri iin Access 2000in sizden onay istemesini arzu ettiinizi de
belirtebilirsiniz. Kayt silme ilemi, onaylandktan sonra veritabanna
kaydedilir ve bir daha geri alnamaz.
Veritabanndaki bilgilerin birbiri ile tutarl olmasna bilgi tutarll
(referential integrity) denir ve bunu korumak iin Access 2000 baz
stunlar ve tablolar silmenize izin vermez. Aada ilikilendirme
konusu ele alrken, bilgi tutarlndan sz edeceiz. Baz stunlar ve
satrlar silmeye altnz zaman, ilikileri korumak isteyen ve silme
ilemi dolaysyla baka kaytlar ve sorgular silmek zorunda kalan
Access 2000, sizden onay isteyecektir.
#ralama
Veri tablosundaki kaytlar, belirli alanlar itibariyle artan veya azalan
sraya sokulabilir. Sralamak istediiniz stunu sein ve Ara
ubuunda artan veya azalan sralama simgesini tklayn. Bunu,
Kaytlar mensnde nce Srala, sonra da Artan veya Azalan sralama
maddelerini seerek de yaptrabilirsiniz.
25
Sralama ilemini sralayacanz stundaki herhangi bir satr sa
tklayp,alacak menden, Artan Sralama ve Azalan Sralama
maddelerini seerek de yapabilirsiniz. Artan sra, saylarda en kkten
en bye, tarihlerde en eskiden en yeniye, metinlerde ise Adan Zye
demektir. Azalan sra ise bunun tersidir. Accesste her bir satr bir kayt
sayld iin bir stunu sraladnz zaman o satra ait dier
hcrelerdeki bilgiler de sralanan stundaki hcre ile birlikte yeni
yerlerine giderler; bylece bir satrn hcreleri yer deitirmemi olur.
Arama (e Dei6tirme
Veri tablolarnz bir deeri gzle aramanza imkan vermeyecek kadar
byk olabilir. Bu durumlarda bir deeri bulmak iin Access 2000in
yardmn isteyebilirsiniz. Ara ubuundaki Bul simgesini tklayarak
veya Dzen mensnden Bul maddesini seerek, arama
yaptrabilirsiniz. Access 2000in bir yenilii Bul ve Deitir aralarnn
tek kutuda iki sekme halinde toplanmasdr. Iki sekme arasndaki
grnm fark Deitir sekmesinde bulunacak deerin yerine
konulacak yeni deerin girilecei kutunun bulunmasdr.
-ulma ilemi ya o srada imlecin iinde bulunduu bir alanda, ya da
tablonun tmnde yaplr. Bul sekmesinde Aranan kutusuna aradnz
deeri yazn; aramann yaplaca yeri gsteren Bak kutusunun seme
okunu tklayarak, aramann tablonun tmnde mi, yoksa imlecin
bulunduu stunda m (imle bir stunda deilse, birinci stunda)
yaplacan belirtin. Eletir kutusunda ise aramann yaplaca alan
parasn belirtebilirsiniz. Aradnz deerin sadece alann tmn
olduu durumlarn bulunmas iin bu kutuda Tm Alan; alann herhangi
bir blm olduu durumlarn bulunmas iin Alann Bir Blm; ve
verdiiniz deerle balayan alanlarn bulunmas iin de Alann
Balangc seeneklerini semeniz gerekir.
Arama kontrollerinin tmn grntleyerek arama kutusunu
bytmeye yarayan Tm dmesini tklarsanz, Arama ynn
belirtebileceiniz bir seme kutusu ortaya kar. Buradaki
seenekleriniz, aramann imlecin bulunduu noktadan yukar veya
aa ya da tm tabloda yaplmasn salar.
Bul kutusu genilediinde ortaya kan dier bir kontrol unsuru ise
aranan kutusuna yazdnz deerin byk harf-kk harf oluu ile
bulunmasn istediiniz deerin byk hadrf-kk harf oluu arasnda
iliki kurup kurmamaktr. Eer Access, sizin kullandnz harflerin
byk veya kk oluuna dikkat etsin istiyorsanz, Byk Harf/Kk
26
Harf Eletir kutusuna iaret koyun. Bu durumda, rnein tas
deerini arattrdnzda Tas ve TAS bulunmayacaktr.
Buradaki Alanlar biimli olarak ara kontrol ise tarih/saat gibi veya
para birimi gibi belirli biimlerde grntlenen alanlarn, veritabannda
bulunduu basit ekliyle deil, tablo tasarm srasnda talep ettiimiz
biimde ele alnarak arama yaplmasn salar. Bunu biraz aalm.
Diyelim ki Tarih alanndaki deerlerimizin ksa tarih olarak
biimlenmesini istiyoruz. Bu biim, Access 2000 tarafndan ancak bu
veri grnlendii zaman uygulanr. Siz verileri 20-09-99 olarak
girmi olabilirsiniz; ama tasarm srasnda bu alan iin uzun tarih
biimini setiyseniz, Access 2000, bu veriyi 20 Eyll 1999 Pazartesi
olarak biimleyerek grntleyecektir. Arama yaparken, arama deeri
olarak 20-09-99 yazar ve Accessten bu deeri bulmasn isterseniz,
ve Alanlar biimli olarak ara seenei seilmi olursa, aradnz
deer hi bir zaman bulunamayacaktr. nk Access sizin biik
talimatna uygun olarak tarihleri uzun biimde biimliyor fakat siz ksa
tarih biiminde aranacak deer veriyorsunuz. Oysa bu kutu
iaretlenmemi olsa idi, Access verdiiniz meru tarih biimini
tablosundaki btn tarih biimleriyle karlatracak ve verdiiniz tarihi
bulursa, bu kayd size gsterecekti.
Alanlar biimli olarak ara seenei seilmi olarak yaplan aramalar
Access 2000i olaanst yavalatr. Alann bir blm seenei ve
aranan yerin tm tablo olmas da Access 2000in arama hzn drr.
Dei6tirme4 bulmaya dayanan ve bulunan deerlerin sizin vereceiniz
bir deerle deitirilmesi ilemidir. Deitir aracnn neleri
bulabileceini, Bul aracn tanrken grdk. Burada sadece sadaki
farkl kontrol dmeleri zerinde duralm.
Sonrakini Bul dmesini tkladnzda Access 2000, sadece bulma
ilemini yapar; hi bir ey deitirmez. Aradnz deerin doru
bulunduuna ve deitirmenin verilerinize zarar vermeyeceine emin
olduktan sonra Deitir dmesini tklayabilirsiniz. Bu noktada
deitirme iinden vazgeerseniz, Iptal dmesini tklayn. Deitir
dmesi, sadece bulunan deeri deitirmekle kalmaz, varsa, bir
sonraki aranan deeri bulur. Tmn Deitir dmesi ise tek tek
bulma-deitirme yerine tablonuzdaki tm aranan deerleri otomatik
olarak bulur ve onay gerekmeden deitirir. Bu dmenin gerekten
hzl altn greceksiniz. Ama bu dmenin bir zellii daha var ki,
tklamadan nce iki kere dnmeniz yerinde olur: yaptnz
deiiklikler kalc olur; geri alnmaz.
27
#zme
Bul arac ile verilerde aratrma yapmak mmkn olmakla birlikte, kimi
zaman belli bir lte uygun tm kaytlar birarada grmek
isteyebiliriz. Bunu Sz aracyla yaparz. Szgelimi, elimizdeki veride
sadece ikinci yaryl snavnda 5 alan rencilerin veya oturduu yer
Tekirda olanlarn, sadece erkeklerin veya sadece kadnlarn
listelenmesini isteyebiliriz. Bunu yapmann en kolay yolu Seime Gre
Szme yntemidir. Szme lt olacak verinin bulunduu kaydn,
ilgili alann (stununu) bulun ve Access 2000e bu stunda sadece bu
deeri ieren kaytlar gstermesini, dierlerini gstermemesini bildirin.
lk olarak kullanacanz verinin bulunduu stunu tklayn ve ya
Ara ubuundan Seime Gre Sz simgesini tklayn, ya da
veritabannda bir yeri sa-tklayp alan menden Seime Gre Sz
maddesini sein.
Veri tablosunun byklne ve setiiniz alann endekslenmi olup-
olmamasna gre, Access 2000, seme ve sadece seilenleri
grntleme iini sratle yapacaktr.
Listede sadece seilen kritere uygun veri ieren kaytlar yer alrken,
Ara buuundaki Szgeci Kaldr simgesi de etkin hale gelecektir. Bu
simgeyi tklayarak, tablonun tmn grntletebilirsiniz. Access
2000, tablonuza uyguladnz son szme ileminin ltn unutmaz
ve bu simgeyi yeniden tkladnzda son szme ilemi yeniden
uygulanr. (Szgeci kaldrdnzda bu simgenin etiketi Szgeci Uygula
eklinde deiir.) Bir tablonun tmn deil sadece szlm kaytlar
ierdiini, tablonun alt kenarndaki (Szlm) kelimesinden anlarz.
Bu kelimenin yannda ka adet szlm kayt olduu da gsterilir.
Seme yoluyla szme ilemi birden fazla alan veya deer lt
kullanlaarak da yaplabilir. Diyelim ki seme ilemini bir snftaki
rencilerin listesinde hem cinsiyet, hem de alnan nota gre
uygulamak istiyorsunuz. Bunu yapabilmek iin, uygulayacanz birden
fazla lt veri deerinin tabloda yanyana stunlara gelmesini
salayn. Bir stunun tmn seer ve Mouse iaretisiyle stun
baln tutarak, iaretiyi dier iki stunun arasna gtrrseniz,
iaretinin bulunduu aralkta koyu tonlu bir izgi olutuunu
grrsnz; Mouse iaretisini burada brakrsanz, stun tmyle bu
yere tanm olur. Bu suretle stunlar yanyana getirerek, arama
lt olacak deerleri de birbirine komu yapm olursunuz. imdi,
Mouse iaretisini lt olacak verilerin en soldakinin veya en
sadakinin zerine getirin (iaret simgesinin kaln ve ii bo art
iaretine dndne dikkat edin) ve Mouseun sol dmesini tutun;
28
lt olacak deerlerin sonuncusuna kadar srkleyin. lt olarak
kullanacanz btn veriler seilmi olacaktr. imdi, ya sa tklayarak
ve alan menden Seilenlere Gre Sz maddesini seerek, ya da Ara
ubuundan ayn ad tayan simgeyi tklayarak, Access 2000e ok
ltl szge uygulattrabilirsiniz.
Seme yoluyla szme ilemini, altalta kaytlarn deerlerini lt alarak
da yapabilirsiniz. Bunun iin, Mouse iaretisini bir satrdaki bir deerin
zerine getirin ve iaret simgesi kaln ve ii bo art iaretine
dndnde, Mouseun sol dmesini tutarak lt olarak
kullanacanz alttaki veya stteki deerleri tarayn. Mouseun
dmesini braktnzda altalta birden fazla deer seilmi olacaktr.
imdi yine sa tklama veya Ara ubuunda tklama yoluyla Access
2000e Seme yoluyla szme ilemini yaptrtabilirsiniz.
Kimi zaman szme iinde kullanacanz deerler byle kolay bir
ekilde seme yoluyma belirtilemez ve daha ayrntl szme ltleri
uygulamak isteyebilirsiniz. Bunun iin Form Szgeci yntemini
kullanmanz gerekir. Bu arac, Kaytlar mensnden nce Sz ve sonra
Form Szgeci maddesini seerek aabilirsiniz. Form Szgeci ald
anda ak olan tablonun yerini alr. Bu yeni tabloda, solda, altta birincil
lt belirteceiniz Ara, ve ikincil, ncl ltler iin bir ok Veya
sekmesi greceksiniz.
Szme ltn tanmlamaya Ara sekmesinden balamak gerekir. Bu
sekme seili iken, tabloda sralanan alan adlarnn altndaki hcreyi
tklarsanz, sada seme okunun grntlendiini greceksiniz. Bu oku
tklayarak, tablonuzda bu alana girimi tm deerleri grebilirsiniz.
Burada istediiniz kadar seim yapabilirsiniz. Yine renci tablosu
rneine dnersek, cinsiyet stunundan Kadn, birinci yaryl snav
notlar stunundan 5, ikinci yaryl snav notlar stunundan 3
deerlerini seebilirsiniz. (Bu durumda tablonuzdaki btn kadn
rencilerden birinci snavda 5 ikinci snavda 3 alanlar seilmi
olacaktr). Veya sekmelerini tklayarak szgecin kapsamn
geniletmek mmkndr. Szgelimi, snftaki kadn rencilerden
birinci yaryl snavnda 5 veya 4 veya 3 veya 2 veya 1 veya 0
alanlar semek isteyebilirsiniz. Her veya ltnden sonra Formun
sol alt kenarna yeni bir Veya sekmesi eklendiine dikkat edin.
Notlarnz tam say olarak deil de kesirli olarak veriyorsanz,
szmenin amac zayf durumdaki rencileri belirlemek olduu halde
bu son yntemde rnein 4,5 alanlar gremezsiniz. Bunu salamak
iin btn not ihtimallerini kapsayan Veya ltleri doldurmak
gerekir. Oysa szme ltlerini seerek deil yazarak verebilir ve
29
standart karlatrma ilemcilerini kullanarak, btn ihtimalleri
kapsayabilirsiniz. Bunun iin, rnein Birinci Yaryl Snav Notlar
stununun bo hcresine <=4,9 (trnaklar olmadan) yazarsanz,
Access 2000 notu 5den aa btn rencileri bulacaktr. Burada
dikkat edilecek nokta nce mukayese ilemcisinin, sonra deerin
yazlmasdr. Access 2000, standart mukayese ilemcilerini kullanr:
> Byk
< Kk
= Eit
<= Kk veya eit
>= Byk veya eit
<> Eit deil
ltlerinizi belirttikten sonra Ara ubuundan Szgeci Uygula
simgesini tklayarak szlm kaytlarnz grebilir; iiniz bittiinde
szgeci kaldr simgesini tklayarak asl tablonuza dnebilirsiniz.
%eli6mi6 #zme #ralama
Genellikle szme ileminden sonra szlm kaytlar ieren yeni
tablonun bir alana gre sralanmas (rnein rencilerin artan veya
azalan not srasna sokulmas) gerekebilir. Szlm kaytlar ieren
geici tablonun herhangi bir stununu seerek sralama ilemi
yaptrabilirsiniz. Fakat szme ve sralama ilemini, Kaytlar
mensnden nce Sz, sonra Gelimi Szme/Sralama maddesini
seerek bir kerede yaptrtabilirsiniz. Bu maddeyi setiiniz Access
2000, bu amala tasarlanm zel bir Sorgu tasarm penceresi
aacaktr. Bu teknikten yararlanmay, Sorgu blmnde ele alacaz.
Mormlar
Accesste bir tabloya veri girmenin kestirme yolu, tabloyu ap, en alt
satrdan itibaren verileri yazmaktr! dedik. Fakat yanyana yzlerce
stunu bulunan bir tabloda bunu yapmak kolay olmaz. Tablonun
Access penceresinin dnda kalan stunlarn grntye getirmek iin
srekli kaydrma ubuunu tklamak zor olabilir. Oysa Access bize veri
girme ve dzenleme iini form yoluyla yapma imkan veriyor. Form, bir
tablonun bir kaydnn ieriini (veya bo bir kayt satrn) bir ok
kontrolle birlikte tek pencerede toplayabilen bir aratr. Formun eni-
boyu da Access penceresinden byk olabilir; fakat formun biimini
belirlemek, alanlarn nerede ve lde grneceine karar vermek
imkan vardr. Ayrca formun zerine veri girmeyi kolaylatran ve
kaydn paras olmayan yardm ifadeleri yazabilir, grafiklerle formu
30
ssleyebilirsiniz. Formda, Sil, Kaydet ve benzeri komutlar ieren
dmeler olabilir. Normal olarak formun her sayfas sadece bir kayt
ierir. Dolaysyla dikkatinizi bir kayt zerinde toplayabilirsiniz. Oysa
veritaban penceresindeki tablo aldnda grntye sdrabildii
kadar kayd sdrr. Bu ou zaman bir kaytla ilgili inceleme yapmay
zorlatrr. Form, veri girmeyi mantksal bir dzene balayabilir ve
kolaylatrabilir.
Otomati. Morm
Access 2000, herhangi bir tabloyu annda forma evirebilir. Form
konusunu kavramak iin en kestirme yol, ak veritabannda bir
tabloyu ap, Accesse bu tablodan otomatik form yapmas talimatn
vermektir. Bunun iin Ara ubuunda Yeni Nesne simgesini
tklamaktr. Bu ara, son yaptnz ii hatrlar ve etiketinde bunu
belirtir.
Access 2000, ak tablodaki btn alanlar, iine bilgi yazlacak kutular
haline getirir; ve bunlarn nne stun bal olan alan adlarn etiket
olarak koyar. Oluturulan formda, kaytlar arasnda gezinmeyi
balayacak kontroller, ve yeni kayt iin bo form edinme dmeleri
vardr. Ite yukardaki tablonun otomatik form haline getirilmi
grnm:
Burada, bu formun balnda ait olduu tablonun adn gryorsunuz.
Ayn anda birden fazla tabloya veri girii yapmakta kullandnz form
varsa, balklaro anda hangi tabloya giri yaptnz gsterir. Formun
kutular arasnda klavyede sekme veya Enter tularna basarak
ilerleyebileceiniz gibi, Mouse iaretisini arzu ettiiniz alann iinde
tklayabilirsiniz. Geride kalan bir alana gitmek iin klavyede st
karakter (byk harf, Shift) tuunu tutarken, Sekme tuuna basn.
Formda, otomatik say olarak belirlenmi alanlara yaz yazamazsnz;
ayn ekilde Accessin deerini hesaplayarak bulduu alanlara da
klavyede deer giremezsiniz. Yeni kayt iin bo form atnzda
otomatik say alannn iinde (Otomatik Say) ifadesini greceksiniz.
Bir formda imle son kutuda iken klavyede Enter veya sekme tuuna
basarsanz veya imle herhangi bir yerde iken Mouse iaretisiyle
baka bir kayda gitmek iin gezinme dmelerini veya yeni kayt
simgesini tklarsanz, iinde bulunduunuz kaytta deiiklik
yaptysanz bu tabloya ilenir. (Bu ilem geri alnmaz.). Bir kaydn
iinde iken klavyede st karakter tuunu tutarken Entera basarak,
kaytta yaptnz deiiklii tabloya kaydetebilirsiniz. Bunu Kaytlar
mensnden Kayd kaydet maddesini seerek de yapabilirsiniz.
31
Bir formda grntlenen kayd silmek de mmkndr. Bunun iin ara
ubuundan Kayt Sil simgesini tklayabilirsiniz. Ayn ilem Dzen
mensnden Kayt Sil maddesini seerek de yaplabilir. Kayt silme
ilemi geri alnmaz. Bir formda kayt silmeye altnz srada bu ilem
veritabannnda bilgi tutarlla asndan baka tablolarda ve
sorgularda silme gerektirecekse, Access 2000 sizden onay isteyecektir.
Tablo grnmnde yapabildiiniz btn sralama ve szme ilemleri
form grnmnde de yaplabilir.
Formun birinci grevi veri girmeyi kolaylatrmak olduu halde, bir
kayd ieren formu, yazdrabilirsiniz. Bunun iin klavyede Ctrl tuunu
tutarken P tuuna basmak veya Dosya mensnden Yazdr maddesini
semek yeter. Formun kat zerinde nasl grneceini Dosya
mensnde Bask nizleme maddesini seerek, inceleyebilirsiniz.
<B
Accesste yeni bir form oluturmak iin eitli yollar vardr. Bunlardan
biri, Veritaban penceresinde Nesneler listesinden Formlar tklamak ve
alacak Form nesneleri penceresinde ya tasarm grnmnde ya da
Sihirbaz kullanarak form oluturma yntemini semektir. Form
nesneleri penceresinin ara ubuunda Yeni simgesini tklayarak daha
ok seenek bulunan Yeni Form oluturma aracn aabilirsiniz.
Bu seeneklerden Tasarm Grnm, seeceiniz bir tabloya dayanan
ve sfrdan form oluturmanz salayacak arac altrr. Form
Sihirbaz ise, sizden form iin gerekli semeleri yapmanz ister ve
formu kendisi tasarlar. ayr otomatik form oluturma arac ile Grafik
Sihirbaz ve Excel-vari zet tablo oluturma aracn da Yeni Form
kutusunda bulacaksnz. Access 2000de tasarm grnmnde form
oluturmaya balamadan nce, otomatik bir form oluturup, bunu
tasarm grnmnde amak, form yapm iin daha eitici olur. Bir
tablo akken otomatik form oluturun ve bu formu kapatn; Access
onay istediinde yeni form olarak kaydetmesine izin verin. Sonra
Veritaban penceresinde Formlar nesnesini sein ve biraz nce
kaydettiiniz yeni formu seip, ara ubuundan Tasarla simgesini
tklayn. Access, formu tasarm grnmnde aarken yanna bir de
Ara kutusu aacaktr.
Tasarm grnmndeki formun en belirgin zellii zeminin klavuz
izgilerle kapl olmasdr; formda yeralacak nesnelerin klavuz
izgilerine yaslanmas, nesnelerin grsel olarak dzgn ve hizal
grnmesini salar. Ara kutusundaki Nesne seici (ok biiminde) ile
32
formdaki nesneleri seer, ve Mouse dmesini basl tutarak,. form
zerinde yeni yere tayabilirsiniz. Denetim Sihirbaz denen iaretiyi
seer ve forma yerletirdiiniz bir nesneyi ve Ara Kutusundaki bir
nesne simgesini tkladktan sonra formu tklarsanz, bu nesnenin
yaplandrlmasnda size yardmc olacak bir dizi diyalog kutusu alr.
Sihirbaz, setiiniz denetim gesinin zelliklerini belirlemek iin sizden
ve formun dayal olduu tablodan bilgiler derleyecektir.
Bir formda yer alabilecek denetim geleri, Ara Kutusunda sralanm
bulunuyor. Bunlar ksaca ele alalm:
/ti.et Formdaki bir veri alann niteleyen balk olabilir; veya formu
kullanarak veritabanna veri girecek olan kullancya yolgsteren
yardm metinleri ierebilir.
Metin .utusu Bu formun bal olduu tablo veya tablolara veri girme
noktalardr. Metin kutusunun zellikler penceresini aarak, bu kutuya
girilecek bilgilerin veritabannda hangi tabloda hangi alana kayt olarak
ileneceini belirlersiniz.
#eene. 5rubu Formunuzda iinden seme yapabileceiniz ve bir
alana bir deer atayan seenekler ierir. Siz seeneklerden hangisini
seerseniz, o seenee vermi olduunuz deer tayin ettiiniz bir alana
yazlr.
#eene. "mesi Genellikle kadn/erkek gibi bir seenein
seilmesini salar; seenein deeri tayin ettiiniz alana yazlr.
Dei6tirme "mesi Formda baslm veya baslmam dme
grnmleri arasnda gider gelir ve tklandnda ierdii deeri ait
olduu alana yazdrr.
Onay .utusu Ierdii deeri iine iaret konduunda ait olduu
alana yazdran bir denetimdir.
Alan .utu Ya olutururken sizin vereceiniz sabit deerleri, ya da bir
tablo veya sorgunun oluturduu deerleri ierir ve formu dolduran kii
tarafndan seilen deer, ait olduu alanr yazlr.
1iste .utusu Iindeki deerleri liste halinde gsterir; kullancnn
iaretledii deer ait olduu alana yazlr.
2omut "mesi Accessin kullancya sunduu herhangi bir komutu
yerine getirebilecek, dme eklindeki simge. rnein bir formu
kaydetmek veya silmek iin kullanlabilir.
;esim Formunuza ilevsel veya ssleme amacyla resim koymanz iin
alan oluturur.
Lli6.isiz O1/ )esnesi Windows OLE-uyumlu herhangi bir programn
dosyasn grntlemenizi salayan pencere aar. Burada
grntelenecek baka program dosyasnn veritabannzla bir ilikisi
yoktur; form yoluyla bir kayttan dierine gidildiinde bu nesre
deimez.
33
Lli6.ili O1/ )esnesi Windows OLE-uyumlu herhangi bir programn
dosyasn grntlemenizi salayan pencere aar. Burada
grntelenecek baka program dosyasnn veritabannzla ilikisi
kurulmutur; bu alandaki nesne kayttan kayda gidildiinde deiir.
#aya sonu Bir sayfadan fazla form oluturmak istediiniz zaman,
formun kesilmesi ve yeni bir form sayfasnn balamasn salar.
#e.me "enetimi Windowsun sekmeli denetim ve diyalog kutular gibi
formlar yapmanz salar. Sekmenin at alana dier form gelerini
yerletirebilirsiniz.
Alt orm Bir form yoluyla kaytlarzda deiiklik yaparken, bal bir
baka bir tablonun denetimini salayan ikinci bir form almasn
salar. Bylece ayn anda bal tabloda da deiiklik yapabilirsiniz.
iz5i (e "i.t&r5en Formlarnz kullanl kolayl salamak amacyla
mantksal gruplara ayrmasn salayan dz izgi ve dikdrtgen
izimleri salar.
Yeni bir form tasarmna baladnzda, ara kutusundaki denetim
aralarn formunuza yerletirmi olmanz, formda yapacanz
deiikliklerin herhangi bir tabloya ilenecei anlamna gelmez.
Formun kayt yapabilmesi iin denetimlerin, mutlaka bir tablonun veya
sorgunun alanlarna balanmas gerekir. (Bal olmayan denetimler de
olabilir. Onlara birazdan deineceiz.) Form tasarm srasnda
Grnm mensnden alan listesi maddesini seerseniz, formu
oluturmaya baladnz srada setiiniz tablodaki btn alanlarn
listesini grebilirsiniz. Bu listedeki bir alan Mouse iaretisiyle tutarak,
ina halindeki formun zerine brakarak, kolayca bal denetimler elde
etmek mmkndr. Bir dier deetimle alan balama yolu ise denetimin
zellikler kutusunda Denetim Kayna satrna tablo ve alan ad
yazmaktr.
Denetim gelerinin zellikler kutusu, denetim sa tklanarak ve
alacak menden zellikler maddesi seilerek grntlenebilir. Ayrca
Form tasarm penceresi akken Grnm mensnden zellikler
maddesini de seebilirsiniz. zellikler kutusu, seili denetimin
alabilecei btn zellikleri ierir. rnein bir metin kutusunun tam 60
ayr zellii vardr. zellikler, kutunun zerindeki sekmelerle gruplara
ayrlmtr. Veri sekmesinde, denetim unsuru ile tablonun alanlar
arasnda veri-ba kurmanz salayan zellikler vardr. Bu zelliklere
Tm sekmesinde de ulaabilirsiniz. Veri ile balanabilecek bir
denetimin zellikler kutusununda denetim kayna satrnn sanda iki
seme simgesi vardr.
Bunlardan aa oku tkladnzda, formu oluturmaya baladnzda,
bir tablo setiyseniz o tablonun alanlarn greceksiniz. Form
34
oluturmaya balarken bir tablo semediyseniz, bu oku tkladnzda
karnza bo bir satr gelir. zellikler kutusununda denetim kayna
satrnn sandaki ikinci seme simgesi ise yanyana nokta eklinde
deyim oluturucusu simgesidir. Bu simgeyi tkladnzda Deyim
Oluturucusu diyalog kutusu alr.
Bu diyalog kutusunda, stte deyim oluturmaya ayrlan bol alan ile
altta yanyana ve birbirine baml pencere greceksiniz: en solda
veritabannda mevcut btn tablolar, sorgular, formlar, raporlar,
Accessin kullanlmaya hazr ve 16 grup halinde ayrlm (aritmetik
ortalamadan, tanjant hesaplamaya, tarih evirmekten, say saymaya
kadar) 188 ilevi, sabit deerler (bo, doru, yanl gibi), 20 adet
matematik ve mantk ilem iaretleri (ileleri, operatrleri), ve ortak
deerler (sayfa numaras, toplam sayfa says, o andaki tarih veya
tarih/saat, ve o andaki kullanc ad) yer alr. Bu pencerede setiiniz
grubun alt gruplar ortadakinde, ortada setiiiz alt grubun iindekiler
ise en sadakinde grntlenir. Bir tablonun bir alann, denetim
unsuruna veri kayna yapmak iin, en soldaki pencerede Tablolar
satrn iki kere tklayn; ortada veritabannn btn tablolar
listelendiinde arzu ettiiniz tabloyu iki kere tklayn. En sada
tablonun btn alanlar listelenecektir. Arzu ettiiniz alan iki kere
tkladnzda, alann ad, tablonun adyla birlikte, stteki Deyim
oluturma alanna yazlacaktr. Tamam tkladnzda bu deyim,
denetimin zellikler listesinde Denetim Kayna olarak gsterilmi olur.
Bu andan sonra formunuzun bu alanna yazacanz veri, setiiniz
tabloda setiiniz alana kaydedilir.
Form oluturmaya balarken bir tablo semi olsanz bile, bir forma
birden fazla tabloya bilgi kaydetme grevi verebilirsiniz. Bir form,
veritaban iindeki btn tablolara bilgi kaydedebilir.
Bylece Accesste veritaban oluturma iinin birinci aamas olan tablo
tasarmn ve veri girmeyi, veriilemin ilk adm olan sralama ve
szmeyi ve veritabanmzla daha kolay alma arac olan formlar
tasarlamay rendik. imdi, veri-ilemin gerektirdii dier ilere
geebiliriz. Bu ilerin banda tablolarmz arasnda iliki kurmak,
Anahtarlar belirlemek ve endeksleri (dizinleri) oluturmak geliyor.
Ister insanlar arasnda, ister tablolar arasnda olsun, iliki zor eydir;
itina ve dikkat, nceden planlama ve sihirli bir anahtar ister!
Insanlararas ilikide sihirli anahtar nedir sorusunu Access 2000e
ayrlm bu kitapta ele alamayz. (Zaten bu konu bu kadar bir
kitapn kapsamn aar.) Fakat hemen belirtebiliriz ki, Accesste
baarl bir veri-ilemin sihirli anahtar Birincil Anahtardr: tablolar
35
arasndaki ilikiyi bu Anahtar ile kurarz, ve greceimiz gibi, daha bir
ok kapy bu anahtarla aarz.
Ikinci blmdeki altrmay yaptysanz, oluturduunuz her tablonun
tasarm grnmn kapatrken, Access 2000nin bu tabloda bir
Birincil Anahtar tayin edilmediini vurgulayarak sizden srarla bir alan
Birincil Anahtar olarak belirleminizi istediini grm olmalsnz.
Neden? nk birincil anahtar her tabloya, daha sonra bir baka tablo
ile ilikilendirmek istediinizde bu ilikide zgn kiiliini verecektir.
Birincil anahtar olarak belirlenen alandaki bilgilerin benzersiz olmas
gerekir. Access sizi buna zorlamaz, ama birincil anahtar alanndaki
bilgileriniz her kayt iin benzersiz deilse, neden birincil anahtar olarak
atam olabilirsiniz? Birincil anahtar, bir kayd, bir baka tablodaki bir
kaytla birletirmekte kullanacamz anahtardr. Birincil anahtarn
dier ilev ve yararlarna ksaca deindikten sonra kayt birletirmedeki
rolne dneceiz.
Her tablonun bir, ama sadece bir, Birincil Anahtar olabilir. Access
2000, her tablonun birincil anahtarn otomatik olarak endeksler (ve bu
sayede veritaban daha hzl alr). Tablonuzda siz bir alan Birincil
Anahtar olarak atamadysanz, Access 2000 bir birincil anahtar alan
oluturmak ister; bunu onayladnzda bir otomatik say alan aar;
tablonuzda zaten birinci alanda otomatik say tr bir veri varsa,
Access 2000 bu alan birincil anahtar olarak atar. Bu sebeple, iyi bir
tablo tasarm ilerde kullanmayacak bile olsanz, birinci alan otomatik
say olarak belirlemeyi gerektirir.
Birincil anahtar, hemen hemen daima sadece bir alandan oluur. Fakat
Access 2000, ancak ok pahal veritaban Server programlarnn
yapabilecei bir imkana da sahiptir: veri-ilem iiniz birden fazla
alandan oluan Birincil anahtar kullanmanz gerektiriyorsa, bunu
yapabilirsiniz. ok-alanl Birincil Anahtar, ileri dzeyde veri-ilem ve
sorgulama bilgisi gerektirir.
Her veri tr birincil anahtar olamaz: birincil anahtar olarak
kullanamayacanz veri trleri, Internet adres balants (kpr), OLE
ve not trleridir. Buna gre, metin, say, tarih/saat, para birimi,
Evet/Hayr, ve otomatik say alanlar birincil anahtar olarak
kullanlabilir. Tablolarnz, birincil anahtar alanna gre otomatik olarak
sralanr. (Eer bir Evet/Hayr alann birincil anahtar yapmaya
kararlysanz, tablonuzda en fazla iki kayt olmas gerekir. Neden?)
Birincil anahtarn tabaloda birinci alan olmas gerekmez; herhangi bir
alan birincil anahtar olabilir. Fakat kendinizi tabolalarnzda birincil
36
anahtar arama zorluundan kurtarmak iin daima birinci alan birincil
anahtar yapacanz veriye ayrmanz iyi bir alkanlk olur.
Tablomda hangi alan birincil anahtar yapmalym? sorusu kanlmaz
olarak sorulacak sorudur. Bu sorunun bir cevab olabilir: Benzersiz veri
ieren alanlardan birini birincil anahtar yapn. Birincil anahtar
seiminde anahtar kelime, benzersiz kelimesidir! Seeceiniz
alandaki veri, her kayt iin zgn olmaldr; baka hi bir kaytta
tekrar etmemelidir. Kiilerin adlarn, soyadlarn ieren alanlar zgn
olamaz. renci numaralar, ara plaka numaralar da bir ka yl sonra
tekrar baka renciye veya araca verilebilir. Telefon numaralar bir
lke iin zgn olabilir (her blgenin kodu farkl olaca ve ayn blge
kodunda benzer numara bulunmayaca iin), ama veritabannzda
rnein blge kodu ayn olan Istanbul ve New York kentlerindeki
dostlarnzn telefon numaralar varsa, zor bir tesadf bile olsa, ayn
numara bulunabilir.
Birincil anahtar alan belirlerken, tablonuzda zgn-benzersiz veri
bulunan alan arayn. Btn alanlarnzdaki verilerin tekrar etmesi
ihtimali varsa, yeni bir alan an ve iine otomatik say koyun.. Gerisini
Access 2000 dnsn!
Bir tabloda birincil anahtar alan tayini son derece kolaydr. Tabaloyu
tasarm grnmnde an; birincil anahtar olarak atamak istediiniz
alann adnn bulunduu kutuyu sa-tklayn ve alacak mende birinci
madde olan Birincil Anahtar maddesini sein. Bu alann adnn
nndeki kutuda kk bir anahtar simgesi belirecektir.
Birincil anahtarn veritaban iin nemini ortaya koyacak kk bir
deney yapalm ve sonra birincil anahtarn birincil grevi olan tablo
ilikilendirme konusuna dnelim.
Yukardaki altrmay yaptysanz ocuklar tablosunu (veya herhangi
bir alan Birincil Anahtar olarak tayin edilmi bir baka tabloyu) an,
ve yeni bir satrda birincil anahtar alanna mevcut deerlerden birini
tekrar yazn. Iinizin bittiini belirtmek zere baka bir hcreyi
tklayn; Access 2000 hemen hata mesaj verecektir:
Birincil anahtar alanndaki verinin zgn olmas gerekir; yoksa bu
anahtar asl grevini yapamaz.
Tablolar arasnda iliki kurmak suretiyle, veritaban dosyamz dz
veritaban olmaktan kurtardmz sylemitik. Tablolar aras iliki,
Access 2000in daha hzl sorgu icras yapmasn salar; veri-ilem
37
ilerimiz daha verimli olur. Bu sayede verilerimizi gncelletirirken,
btn tablolar elden geirmek ve hatta yeniden girmek zorunda
kalmayz; sadece gncelletirilmesi gereken tabloya ek veya bu
tabloda deiiklik yaparz.
Bir firma dnelim: en az 200 firmadan hammadde alyor ve en az
500 bayie maml madde veriyor. Bu firmalarn adreslerinden, alnan
hammadde ve verilen maml maddelerin zelliklerine kadar, diyelim ki
2 bin stun dolduran verilerimizi tek tabloda topladmz varsayalm.
Byle bir tabloda, aldmz mallara ilikin bilgi stunlar, sattmz
mallara ilikin satrlarda bo kalrken, sattmz mallara ilikin bilgi
stunlar aldmz mallara ilikin satrlarda bo braklmak zorundadr.
Bu hem gereksiz yere ikin bir veritaban dosyasna yol aar, hem de
veri giriinde saysz hatalara sebep olur. A firmasndan aldmz yeni
bir mala ait yeni bir kayt girerken, firmann adndan adresine, faks
numarasndan posta koduna kadar btn bilgileri yeni satra tekrar
yazmak zorunda kalrz. Bu, yeni yazm hatalarna davetiye kartmak
demektir. Tekrar eden bu bilgilerin dosya boyutuna bindirecei yk
dnn!
Oysa elimizde bir firmalar tablosu, bir de mallar tablosu bulunsa; her
bir maln hangi firmadan alnd veya hangi firmaya verildiini
gsteren alana, firmalar tablosunun birincil anahtarndan ba kursak,
hem tekrar-tekrar veri giriinin yol aaca insan hatalardan korunmu
oluruz (bu bilgileri girecek operatrlere vereceiniz creti de
unutmayn!), hem de ilenmesi kolay nisbeten kk veritaban
dosyasna sahip oluruz.
Verilerimizi tek tabloda toplamann sakncalarn anladk. Ve diyelim ki
elimizde byle, be veya alt tabloya blnm bir veritaban var.
imdi, son 3 ay iinde mal aldmz firmalarn bir dkmn kartmak
istiyoruz. Be-alt ayr tabloyu mu kada dkeceiz? Bu ayr ayr
tablolara blnm bilgileri nasl birletireceiz? Baka bir deyile, ayr
tablolara bldmz verileri iare yarar, anlaml diziler haline
getirmek iin nasl birletirebiliriz? Bunu, tablolar herbirinin dieri iin
anlaml tek zgn alanndan, yani Birincil Anahtarlarndan birletirerek
yapabiliriz. Veritabannz bu birden fazla tabloya blerek ve herbirine
zgn birincil anahtar alanlar koyarak tasarlasanz bile, ayn veritaban
iinde yer alyorlar diye tablolarnz kendiliklerinden iliki kurmazlar.
Bunu bizim salamamz gerekir. Kendi tablolarmzda kendi
ilikilerimizi oluturmadan nce, Access 2000nin bunu nasl saladn
grmek, iliki konusunda bize daha iyi fikir verecektir. Bunun iin
Access 2000i altrn; Yeni veritaban oluturmak zere alan
pencerede Veritabanlar sekmesini sein ve Stok Ynetimi ablonunu
38
iaretleyin. Yeni bo stok ynetimi veritabannz oluturulduunda,
eer Access penceresi iinde kltlm durumda ise veritaban
penceresini bytn; Switchboard ad verilen veritabann kullanmanz
iin oluturulan grafik arayz kapatn. Stok Ynetimi1 adl yeni stok
ynetimi veritabannzn nesnelerinden Tablolar setiinizde, yedi adet
asl tablo oluturulduunu greceksiniz: rnler, stok hareketleri,
kategoriler, alanlar, sipari formlar, reticiler ve nakliye yntemleri.
Stok ynetimi konusu ile hi ilginiz yoksa bile, sadece iliki konusunu
kavramak iin, bu tablolarn bir firmann elindeki stoklar takip iin
gerekli ve yeterli olduunu varsayalm.
imdi, Aralar mensnden Ilikiler maddesini sein. Karnza una
benzeyen bir pencere alacaktr:
Alan penceredeki kutular arasndaki izgiler buradaki grntye
benzemiyorsa, kutular Mouse iaretisiyle balklarndan tutarak
srkleyebilir ve konumlarn buradakine benzer ekle getirebilirsiniz.
Bu pencerede, kutularn balnn tablo adlarn ierdiine dikkat edin.
Kutularn iindeki maddeler ise tablolardaki alanlarn adlardr. Her
tablonun kutusunda bir alan adnn koyu yazldn gryor musunuz?
Bu, o tablonun birincil anahtar olan alandr. Baz alanlardan kan
izgilerin dier bir kutudaki alana balandn gryorsunuz. Dikkat
ederseniz, aralarnda izgi bulunan alan adlarnn ayn olduunu da
greceksiniz. Bu izgilere iliki denir; tablolarn birbirleri ile hangi
alanlarndan ilikide olduklarn gsterir. emaya veya Access Ilikiler
Penceresine tekrar bakarsanz, iliki izgilerinin bazlarnn sol ucunda
1, sa ucunda sonsuz iaretinin bulunduunu, baz ilikilerde
iaretlerin yer deitirdiini ve dierlerinde ise izgilerin iaretsiz
olduunu greceksiniz. Bu iaretler kurulan ban niteliini gsterir;
ban nitelii ise daha sonra iki tablo arasnda yaplabilecek
birletirmede hangi kaytlarn hangi kaytlarla birletirilecei veya
Accessin deyimiyle eletirileceini tayin eder. Bu tanmla biraz ifreli
grnyorsa da Accesste kurabileceimiz ilikilerin niteliklerini ele
alnca manzara aydnla kacaktr. Tablolarnzn arasnda tr iliki
olabilir:
-ire bir ili6.i: Ilikilendirdiiniz iki tablodan birincisi ile ikincisi
arasnda sadece bir kayt eleebilir. Bu tr ilikilendirmeyi
tabalolarmzda sk kullanmadmz greceksiniz; nk genellikle
byle tek gerekli tablo yapmayz.
-irBo. ili6.isi: Birbirine baladmz iki tablodan birindeki bir kayt
dier tabloda birden fazla kaytla eleebilir. Ikinci blmdeki
rneimizi hatrlarsanz: bir ailenin birden fazla ocuu olabilir; fakat
her ocuun sadece bir ailesi olabilir. Dostlarnmzn ocuklaryla
39
birlikte bir tablosunu edinmek istersek, ocuklu dostlarmzn ad
yeni tabloya ayr satrda yazlacak, iki ocuklu dostlarmzn adlar
iki, tek ocuklu dostlarmzn adlar ise bir kere girecektir. Neden?
nk aile ba (Aile Sra No alan), ocuklar tablosunda ok kayda
iaret ediyor.
o.Bo. ili6.isi: Ilikilendirdiimiz tablolardan birincisinde birden
fazla alan, ikincisinde birden fazla kayda (ve tabi ikincisindeki birden
fazla alan birinci tablodaki birden fazla kayda) iaret ediyorsa, bu kez
tablolar arasnda ok-ok ilikisi var demektir. rnek tablomuzda byle
bir durum yok, ama bir sipari veritaban dnn: her bir sipari
emrinde birden fazla mal sipari ediliyor olabilir; mal tablosunda ise
her bir mal birden fazla sipari tablosunda grnyor olabilir. Byle bir
ilikinin sonucu ortaya kacak nc tabloda hem hem her bir
sipari, hem de her bir mal birden fazla satrda grnecektir.
imdi bu bilgilerin nda biraz nce oluturduunuz Stok Ynetimi
veritabannn ilikiler penceresine bakalm. imdi bu veritabanndaki
dosyalar kullanarak, firmamzn verdii siparilerle ilgili ve siparii
veren personele gre sipari miktarlarn gsteren yeni bir tablo
yapabilir miyiz? Yapabiliriz. Siparii veren Personel, hangi tabloda
hangi alandaki bilgi ile bulunacak? alanlar tablosundaki alanNo
alanndaki veri ile. Peki, bu alandaki kaytlar, hangi tablodaki hangi
alanda bulunan kaytlarla eletirilecek? Sipari formlar tablosundaki
alanNo alanndaki kaytla. Yani alanlar tablosundaki alanNo
alanndaki veri Ahmet alkan arkadamza ait 812 ise ve bu deer,
Sipari formlar tablosundaki kaytlarda alanNo alanndaki deerlerle
eleiyorsa, bu kayt yeni tablomuza alnacak; sonra srasyla dier
deerler taranacak, eleenler yeni tabloya dahil edilecektir. (Yeni
tablo nerede ve nasl oluacak? sorusunu imdilik sormayn; bunu
Sorgu ile yapacaz; ve daha sonra ele alacaz.)
alanlar tablosundaki alanNo alannda Mehmet Tembelolu
arkadaz belirten 813 eklindeki veri, Sipari formlar tablosundaki
kaytlarda alanNo alanndaki hi bir veri ile elemiyorsa ne olacak?
Yeni tabloda 813 eklindeki alanNoyu ieren bir kayt olmayacaktr.
Ve muhtemelen Mehmet Tembelolu, neden hi sipari vermediini
izah etmek zorunda kalacaktr!
Tablolarmz arasnda iliki oluturma iini kendimiz yapmak istersek,
yine biraz nce atmz Aralar mensnden Ilikiler maddesini
geerek atmz pencereyi amamz gerekir. Ikinci blmdeki Adres
Defteri altrmasn yaptysanz, imdi bu veritaban dosyasn
aabilirsiniz. Bu altrmay yapmad iseniz, imdi ikinci blme dnp
bu dosyay oluturabilirsiniz! Veritaban aldnda veya tablolar
40
oluturma iini bitirdiinizde Aralar mensnden Ilikiler maddesini
sein. Karnza una benzeyen bir grnm gelecektir:
Biz kurmadmz halde iki tablomuz arasndaki bu iliki, ocuklar
tablosunu olutururken, Aile Sra No alannn doldurulmas iin Aile
tablosunun ayn adl alanna girilmi kaytlara baklmasn istemi
olmamzdan kaynaklanyor. Burada grdnz izgiyi ortasndan sa
tklayn ve alan menden Sil maddesini sein; Access silme ilemini
onaylattrmak istediinde Eveti tklayn. imdi iliki oluturmaya
sfrdan balayabiliriz. nce bir kere daha kurmak istediimiz ilikinin
amacn tekrar edelim: yeni adres defterimizi oluturduumuz srada
yle bir an olabilir ki, dostlarmzn ocuklarn gsteren, veya
ocuklarn ailelerine gre sraland bir liste yapmak isteyebiliriz. Byle
bir yeni tablo oluturmaya kalktmzda, Accessin hangi ocuun
hangi aileye ait olduunu bilmesi gerekir. Bunu iki tabloyu
ilikilendirerek veya baka bir ifadeyle Accesse, hangi ocuun hangi
aileye ait olduunu nasl belirleyeceini syleyerek yapabiliriz. Accesse
unu sylemek zorundayz: ocuklar tablosundaki kaytlarla Aile
tablosundaki kaytlar birletirirken birinci tablonun Aile Sra No
alanndaki deerin ocuk tablosundaki kaydn ayn isimli alanndaki
deerle eleip elemediine dikkat et; eer bu veriler ayn ise o
zaman bu ocuk o aileye ait demektir; iki kayd birletirebilirsin.
Bunu sylemenin yolu ise ok kolay: Ilikiler tablosuna ait kutudaki
AileSraNo satrn Mouse iaretisiyle tutup, gtrp ocuk
tablosundaki AileSraNo satrnn zerine brakn. (Ilikiler penceresini
atnzda tablolarna ilikin kutular gremiyorsanz, Ilikiler
mensnden Tablo Gster maddesini; alacak kutuda kaytlar
arasnda iliki kuracanz, dolaysyla grntlenmesini istediiniz
tablolar seerek Ekle dmesini tklayn.)
Srkleme srasnda Mouse iaretisinin dikdrtgen iliki simgesine
dntn greceksiniz (iaretli). Mouse iaretisi brakacanz yere
dikkat etmelisiniz: Access 2000, drtgeni hangi alan ad zerinde
brakrsanz, o alan ilikilendirir. Mouseun sol dmesini braktnz
anda Ilikileri Dzenle diyalog kutusu alacaktr.
Burada solda ilikinin balad tablo ve alan ile ilikinin kurulduu
tablo ve alan gsterilmektedir. Her ikisinin de seme dmelerini
tklayarak baka alanlar seebilirsiniz. Bu listenin altnda, Bilgi
tutarllna zorla seeneine iaret koyarsanz, Access 2000 size iki
seenek daha verir: ilikinin sol tarafndaki alan gncelletirilirse, bu
ilikiye dahil tablolarn da gncelletirilmesi, alan silinecek olursa dier
tablodaki kaytlarn da silinmesini salayabilirsiniz. (Gncelletirme
41
kullanl bir seenek olmakla birlikte, silme ilemini otomatik hale
getirmek, istemeden bilgi kaybna uramanza yol aabilir.) Ilikileri
Dzenle kutusunun sa tarafndaki dmelerden Birletirme Tr
dmesini tklaksanz, ilikinin yn ve trn belirleme imkann
veren, seenekli Birletirme zellikleri kutusunu am olursunuz.
Burada yapacanz tercihler, hangi tablodan hangi kaydn alnacan
belirler. (Srasyla her seenei setiinizde, iliki izgisinin
ucundaki oklarn ynnn nasl deitiine dikkat edin.)
Kutular sarsayla kapattnzda, iki tabloyu ilikilendirmi, baka bir
deyile Access 2000i bu tablolar kullanarak yapacanz veri-ileme
hazrlam olursunuz. Bir veritabanndaki tablolar arasnda ilikileri
olutuunuz zaman Access 2000, hi bir yapmayacak, sz gelimi
ortaya yeni bir tablo veya rapor kartmayacaktr. Bunu yapmas iin
gerekli talimat daha sonra vereceiz. imdilik sadece Accesse, bu
talimat yerine getirmesi iin gerekli bilgiyi vermi, veritabanmzn
tablolar arasndaki balar tantm olduk.
Dizin
Access 2000in veri-ilem ileri iin yapmas gereken bir dier hazrlk
ise Endeks kartmaktr. Veritabanmzn tablolarn neden
endekslettirmek isteriz? Daha sonra yapacamz veri-ilemleri hzl
olsun diye? Access 2000n endeksi, tpk bir kitabn arkasndaki endeks
gibi alr: aradnz kolay bulursunuz. Burada bulma ilemini kitap
okurundan farkl olarak kullanc deil Access yapmaktadr. Access,
kendi endekslerini, vereceiniz sorgu talimatlarn icra ederken,
tablolar sraya sokarken, rapor olutururken ve arama yaparken
kullanr.
Kpr, not ve OLE nesnesi ieren alanlar dndaki tr alan trleri
endekslenebilir. Sadece Birincil Anahtar olan alan deil, btn alanlar
(tr uygunsa) endekslenebilir; birincil anahtar alan otomatik
endekslenir. Endeks, sorgu, sralama ve aramay hzlandrr; fakat bir
veri tabannda ne kadar ok alan endeksleniyorsa, Access 2000in
veriilem hz o kadar azalabilir. Access 2000e tablo tasarm srasnda,
endeks yaparken birden fazla benzer kayt bulunmas halinde ne
yapmas gerektiini biz syleriz. Tablo tasarm penceresinde bir alan
trn tkladnzda, alan tr elverili ise, pencerenin Alan zellikleri
blmnde Sral satr belirir. (Access 2000, endekse yardm
dosyalarnda dizin derken burada Sral demeyi tercih ediyor. Ama
bu kadar kusur, kad kznda da olur!) Bu satrn iini ve sanda
belirecek seme okunu tklarsanz, seeneiniz bulunduunu
grrsnz: Endeks yapma! anlamna Hayr ; Endeks yap, ve
42
tekrarlara aldrma! anlamna Evet, Tekrarlama Var; ve Endeks yap
ve bu arada tekrarlar yakala! anlamna Evet, Tekrarlama Yok. Bu
sonuncu tercihi seerseniz, Access, endekslenmi alanlarda, tm
kaytlarn benzersiz olmasna dikkat eder ve sizi uyarr.
Bylece, veritabanmz birincil anahtarlar, ilikileri ve endeksi ile veri-
ileme hazrlam bulunuyoruz. Bundan sonra, tablolarmz
sorgulayabilir; tablolar ve sorgulardan raporlar hazrlayabiliriz.
Verilerimizi, kelime ilem programnn iinde tablolar oluturup, bu
tablolarn iine yazmyorsak, bunun bir nedeni olabilir: Verilem
programlarnn sorgu arac. Sorgu veya Query, veritaban fikri ortaya
atld gnden beri var. Hatta, veritaban dosyalarnn, dier bilgisayar
kayt dosyalarndan ayrmasn salayan unsur, sorgudur. Bir
veritaban dosyasndaki bilgileri sorgulama ve bu verilerden yeni
bilgiler elde etme ihtiyac o kadar belirgin hale geldi ki, bilgisayar
mhendisleri srf bu i iin bir dil bile icad ettiler: Sorgu Dili (Query
Language).
Ne var ki, veritaban biimi kadar sorgulama dili ortal kaplaynca,
belli bal bilgisayar donanm ve yazlm firmalar ve niversiteler
biraraya gelerek, bu kargaaya son vermek zere kollar svadlar; ve
ortaya SQL (Structured-Yaplandrlm Sorgu Dili) kt.
SQL, 1980lerin balarnda Sybase firmas tarafndan UNIX ortam iin
gelitirildi. Microsoft firmas, Sybaseden ruhsatn ald bu teknolojiye
dayanan MicrosoftSQL Server programn 1987de Windows 3 iin
piyasaya srd. Ertesi yl, MS, Sybase ve Ashton-Tate firmalar
MSSQL-Servernn OS/2 srmn ortaklaa hazrladlar ve daha sonra
IBMLin de katld bu aba 1991e kadar srd. Ashton-Tatein bu
birlikten 1990da ekilmesi zerine, Sybase ve MS yeni bir anlama
yaparak, dili ve Server, Windows NT ortam iin birlikte gelitirmeye
baladlar. Bu abann sonucu SQL Server program oldu. Bu program,
bugn 7nci srmndedir.
Bir taraftan endstri apnda geerli bir teknoloji ve bu teknolojinin
balca arac olan bir dilin ad olarak SQL, dier taraftan Microsoft
firmasnn bu teknoloji ve dili kullanan bir programnn adnda (SQL
Server) kullanld iin, sadece Microsofta ve Windows ortamna ait
sanlabilir. Bu doru deildir. SQL, bugn piyasada bulabileceiniz belli
bal veritaban oluturma ve veri-ilem programlarnn ortak dilidir.
Microsoft Access, 1992 ylnda dnyaya geldi; ve ilk gnden itibaren
tek bana bir veritaban oluturma ve ileme program olarak deil,
43
fakat daha byk veritaban dosyalarna, veri bankalarna balanabilen
ve oradaki verileri ileyebilen bir program olarak tasarland. Access
2000, Access Projesi (Dosya mensnden Yeni maddesini ve alan
ablon kutusunda Proje (Yeni Veritaban) adl simgeyi tklayn)
dosyalar oluturarak, SQL Server dosyalarna ulaabilir; bu dosyalarda
SQL sorgular altrabilir.
Iyi bir Access kullancs, bu programla byk veritaban mimarisine
adam atabilir; ileri dzeyde veri-ilem tekniklerini renebilir. Veri
Madencilii (Data Mining) teknolojileri, Online Analytical Processing
(OLAP) teknikleri ve gnmzde veri ynlendirmeli Web uygulamalar,
SQLe dayanan gelimelerdir. Accesste receiniz SQL, size bu
teknolojilerie ilk adm atmay salayacaktr.
Accesste SQLe ilk adm ise daha nce grdmz Szme ileminin
son blmnde ksaca szn ettiimiz Gelimi Szme/Sralama arac
ile atlabilir. Aslnda Accesste yaptmz seme veya Form yoluyla
szme ilemleri, bir sorgu ilemidir; ancak bu sorgunun SQL komutunu
(veya Accessin kulland kelimeyle, deyimini) Access kendisi
oluturur. Gelimi Szme/Sralama (GSS), dier szme ilemlerine
gre ileri saylrsa da, bir sorgu deyimi (SQL komutu) yazmann
yannda basit saylabilir. Bu sebeple, tabir yerinde ise Accessin
destekledii bir sorgu gelitirme ilemi olan GSSy sorguya giri
konusu olarak ele alabiliriz. GSSy kavradmz anda sorgu tekniini
kavram oluruz. Accessin sorgu teknii ise daha genel SQLe giri
saylr.
GSSnin bir sorgu arac olarak snrlamalar vardr. Sadece bir tablonun
ierdii verilerle alabilir; birden fazla tablo veya baka sorgularn
sonularn kullanamaz. Sonu itibariyle gSS de bir tabloda belirli
ltleri karlayan kaytlar grnteleme aracndan baka bir ey
deil; birden ok tabloda sorgu yapmak iin gerek sorgu aracn
kullanp, gerek SQL komutlar yaszmamz gerekir. GSSte verilere
sadece basit sorular sorabiliriz. (Daha gelimi sorgular iin, gerek
sorgu aracn kullanrz.) GSS ile yapacamz szme sonunda
grntlenen kaytlarn btn alanlar grntlenir; oysa gerek
sorguda ortaya kacak yeni tablo veya formda hangi alanlar olsun
istiyorsanz o alanlar olur. Bu snrlamalarna ramen (belki de bu
yzden) GSS, Accesste sorguya giri iin mkemmel bir adm saylr.
imdi bir tabloyu an ve Kaytlar mensnden nce Sz, sonra
Gelimi Szme/Sralama maddesini sein.
Bu, eer bata tablo ekleyebilseydik, sorgu hazrlama penceresinin ta
kendisi olurdu. GSS, belirttiimiz gibi sadece bir tablo ile alr; ve o
44
tablo da seilmi olarak karmza gelir. Bu penceresi inceleyelim.
stte, sorguda (pardon, szgete) kullanlacak tablo yer alr. Buraya
alan listesi denir. Altta ise szgeci olutururken kullanacamz,
imdilik bo olan, sorgu tasarm klavuzu yer alr. Burada sadece
szme amacyla yararlanacak da olsak oluturacamz ey gerekten
bir sorgudur. Bu blmde, Alan isimli birinci satrn birinci stundaki
kutusunun iini, sada seme oku belirince oku tklayn: yukarda alan
listesinde yer alan alan adlarnn burada sralandn greceksiniz.
Sorgu, burada olduu gibi ileri dzeyde szme ilemi iin bile olsa,
veriye soru sorulmas anlamna gelir. GSSde bir snftaki rencilerin
snav notlarn ieren tablomuza rnein Son snavda 4,5dan aa
not alm renciler kimler? diye sorabiliriz. Ya da yemek tariflerini
derlediimiz bir veritabannda, Kebaplar tablosuna Iinde biber
olmayan ve kyma ile yaplmayan kebaplar hangileri? sorusunu
yneltebiliriz. Mzik kaset ve CDlerinizin veritabanndaki Trkler
tablosuna Yavuz Bingln 1996dan sonra km kaset ve CDleri
hangileri? diye sorabiliriz. Ya da elimizdeki Adres Defteri veritabannda
Aile tablosuna Istanbul ve Nidede oturan ve kart yollamam gereken
dostlarm kimler? eklinde bir soru yneltebiliriz.
Bunun iin, Alan srasnn birinci stundaki kutusunun seme okunu
tklayarak, alan listesinden ehiri sememiz gerekir. Sonra, GSSnin
sadece szme deil ayn zamanda sralama yaptn hatrlayarak,
ikinci sradaki Srala kutusunun sandaki seme okunu tklayarak,
Artan, Azalan ve Srasz seeneklerinden Artan seelim. Ve sra geldi,
szme iin uygulatacamz ltleri belirlemeye. lt satrnn iini
tklayp Istanbul yazyoruz. Trnak iaretlerini siz koymazsanz,
Access koyar. Istanbul VE Nidede oturan dostlarmz birlikte semek
iin, alttaki VEYA satrna da Nideyazalm. Buraya kadar, tabloya
soracamz sorunun birinci blmn sormu olduk: Istanbul ve
Nidede oturanlar. imdi sorgunun ikinci blmne geliyoruz: Kart
gndermem gerekenler. Ikinci blmdeki veritaban altrmasn
yaptysanz, KartYolla alannn trn Evet/Hayr yaptmz
hatrlyor olmalsnz. imdi, Alan satrnn ikinci stununda KartYolla
alannn sein; (Evet deerlerinin sraya sokulmasna gerek
olmadna gre ikinci satr atlayabilirsiniz) ve lt sarmna Evet
yazn. Ara ubuundaki Szgei Uygula simgesi tklayn ve tablonuzun
sadece Istanbul veya Nidede oturanlardan kendilerine kart yollamam
gerekenleri gsterdiini, dierlerinin szldn ve szgecin dier
tarafnda kaldn greceksiniz.
Kendi kendinizi kutlayabilirsiniz: nk sadece Accessin gelimi
szme ve sralama aracn kullanmakla kaldk; SQL komutu yazmaya
45
da ilk adm attk. imdi artk Accesste ciddi sorgulama ileri
yapabiliriz.
Sorgu, veriye soru sormaktr! demitik. Kimi zaman bir tablonun
cevaplayabilecei sorular, szme ve hatta sralama ile
zmleyebiliriz. Fakat elde iki veya daha ok tablo varsa ne yapanz?
Diyelim ki, siz sadece bir snfn deil, be ayr snfn retmenisiniz ve
snflarnzda baar orann etkileyen garip bir eilim farkettiniz. Sizin
derslerinizde kz renciler genellikle baarsz oluyor. Sadece bir
snfn retmeni olsanz, bu kukunuzun yerinde olup olmadn
snamak iin iki szme ilemi size sonucu verirdi. (Nasl?) Fakat be
ayr snf sz konusu olunca, her tablonun kendi iindeki yzdeler,
anlaml olmayabilir. Size btn tablolardan seme-szme yapan bir
ara gerekiyor. Ya da be tabloya birden soru sormanz salayacak bir
ara. Bu aracn ad Sorgudur.
Access'in #or5ular
Access 2000, bize alt ayr sorgu tr veriyor. Bunlardan Basit Seme
sorgusu, biraz nce ele aldmz Gelimi Szme/Sralama aracnn
birden fazla tablo kabul edebilenidir. apraz sorgu, verileri
gruplandrarak, bunlar iin saym, toplam ve ortalama gibi hesaplar
yapar. rnein rencileri cinsiyetlerine ve derslere gre gruplandrp,
aldklar not ortalamalarn gstermek., apraz tablo yapmaktr. apraz
sorgu bir tabloda alt iin, rnein rencilerinizin notlar derslere
gre ayr tablolarda ise bunlar bir tabloda basit seme sorgusuyla
birletirmeniz gerekir. Tablo yapma sorgusu, seme sorgusundan farkl
olarak, alt zaman ortaya bir tablo penceresi kmaz; Access,
sizden daha nce ald isimle bir tablo oluturur. Bu tablo
veritabannn paras haline gelir. Oysa dier sorgularn sonular ancak
sorgu alt srada vardr. Gncelletirme sorgusu, sorgu tasarm
srasnda verdiiniz bir sabit deeri veya verdiiniz bir deyimin o srada
bulunacak sonucunu, tayin ettiiniz bir alana yazar. Bu, Bul-Deitir
gibi basit bir ara olmayp, her kayd, belirli bir formle veya kydn
kendi iindeki bir deere gre yeniden hesaplayabilir. Ekleme ve Silme
sorgular da gncelletirme sorgusu gibi, ya farkl tablolarn kaytlarn
birbirine ekler, ya da tablolardaki kaytlar siler. Bunlarn dnda
tasarm srasnda yklediiniz ilevlerin bir sonucu olarak bir sorgu
Parametre sorgusu (verdiiniz grevi yapabilmek iin kullancdan bir
deer girmesini isteyen sorgu), SQL Sorgusu (SQL komutlarn
kullanarak birleim, dorudan sorgu, veri tanmla ve alt sorgu gibi
veritabannz ODBC yoluyla dardan kullanacak kullanclar
gznnde tutarak hazrladnz sorgular) ve otomatik arama sorgusu
46
(yeni bir kaydn baz alanlarnn otomatik olarak doldurulmasn
salayan sorgu, AutoLookup sorgusu) diye de adlandrlabilir.
Basit Seme Sorgusu (BSS) dndaki sorgular, ileri dzeyde Access
bilgisi ve hatta bir lde Programlar Iin Visual Basic (VBA) bilgisi
gerektirebilir. BSSyi iyi kavrayarak, bu ileri dzeydeki sorgular iin
mkemmel bir balang yapabilirsiniz.
BSSin temel zelliklerini sralarsak, unlar karmza kyor:
1. Sorguda birden fazla tablo kullanabilirsiniz; tablolar arasnda
oluturduunuz ilikiden yararlanabilirsiniz.
2. Sorgu sonucu sadece istediiniz alanlar grntleyebilir; bu srada
gerekli olmayan stunlar yeni sorgu sonucu tablosuna almayabilirsiniz.
3. Sorgu sonucu oluacak tabloda alanlar istediiniz stun srasna
sokabilirsiniz.
4. Seme ilemi sonucu ka kaydn grntlenmesini istiyorsanz, o
kadar kayda yer verebilirsiniz.
5. BSS (ve dier) sorgular icra ettikten sonra, sorguya konu olan
tablolarn deerlyeri deimez; baka bir deyile sorgular tablolar
sadece okur, ieriini deitirmezler. Bir sorgu iledikten sonra tablo
oluturuyorsa (Tablo Yapma Sorgusu ise) ortaya yeni bir tablo kar.
Sorguyu tekrar altrdnzda bu tablo yeniden yazlr ve Access
2000, zelletir kutusunda yaptnz uyar ayarlarna gre sizi
uyarabilir.
Ikinci blmdeki Adres Defteri altrmasn yaptysanz, bu veri
tabann an ve birlikte bir BSS oluturalm. Adres Defteri veritabann
oluturmad iseniz, aadaki admlar kendi veritabannza uygulamak
zorundasnz. Burada yapmak istediimi i veya Access 2000e
sormak istediimiz soru u: Istanbulda oturan ve ocuu olan
dostlarmz kimler, ocuklarnn ad ne?
Veritaban dosyas aldnda, veritaban penceresinde, nesneler
listesinde Sorgular satrn tklayn. Sorgular penceresinde Tasarm
grnmnde sorgu olutur ve Sihirbaz kullanarak sorgu olutur
eklinde iki ksayol greceksiniz. Pencerenin ara ubuundaki Yeni
dmesini tklarsanz, karnza daha ok imkan sunan bir sihirbazn ilk
admn ieren bir kutu alacaktr. Bu kutudaki Basit Sorgu Sihirbaz
maddesi, Sorgu nesnesi penceresindeki Sihirbaz kullanarak sorgu
olutur ksayolu ile ayn sonucu verir. Ister Yeniyi tklayp alan
kutudan Basit Sorgu Sihirbaz maddesini sein, ister Sihirbaz
kullanarak sorgu olutur ksayolunu tklayn.
47
BSS sihirbaznn ilk penceresinde hangi alanlarn sorguda bulunmasn
istediinizi belirtmeniz gerekir. Bir sorgu sadece tablodan deil sorgu
sonucundan da seme yapabilir; dolaysyla sol stteki semeli listede
veritabannzda mevcut btn tablolar ve sorgular sralanr. Bu listede
seilmi olan tablo veya sorgunun ierdii alanlar ise sol altta
kullanlabilir alanlar listesinde yer alr. Veritabanmza soracamz
sorunun birinci blm Istanbulda oturan dostlarmzn seilmesi
olduuna gre, bu kiilerin kaytl olduu Aile tablosunu semek
zorundayz. Bu alanlardan hangileri BSS sonucu oluturulacak
tablomuzda yer alsn istiyoruz? Bir kere dostlarmzn adn ve soyadn
sememiz gerekir. Seilecek kiilerin tmnn Istanbulda oturanlar
olmas iin ehir alannn da seilmesi art. Bunu yapmak iin arzu
ettiimiz alann adn bir kere tkladktan sonra ortadaki dmelerden
en stte olan saa doru tek oklu dmeyi tklyoruz. Soldaki alanlarn
tmnn sorgu srasnda kullanlabilir olmasn isteseydik, ikinci
sradaki iki oklu dmeyi tklamamz gerekirdi. Bir alan yanllkla saa
geirirsek, nc sradaki sola doru tek oklu dmeyi tklayarak
sorguda kullanabileceimiz alanlar listesinden kartrz. Bu alanlarn
tmn sorgu listesinden kartmak iin el alttaki iki oklu dmeyi
tklayabiliriz.
Veritabanna sorduumuz sorunun ikinci blm, Istanbulda oturan
dostlarmzdan sadece ocuklar olanlarn seilmesini, nc blm
ise ocuklarn adlarnn da listelenmesini gerektirdiine gre, bize
ocuklar tablosu ve bu tablodaki ocuk adlar alan da gerekiyor. imdi
Tablolar ve sorgular kutusunun seme okunu tklayarak alan listeden
ocuklar tablosunu seelim, sonra da bu tablonun Ad adl alann saa
aktaralm. Ama hemen Ileri dmesini tklamayn.
imdi bir an iin kendimizi Access 2000in yerine koyalm: Biraz sonra
bir seme ilemi yapacaz; ocuu olan ve Istanbulda oturan kiileri
seeiz. Istanbulda oturanlar semek kolay: Eer ehir alanndaki
deer Istanbul ise bu kiiyi seebiliriz. Peki bu kiilerin ocuu olup
olmadn nasl bilebiliriz? Veya yle soralm: bu kiilerin ocuklar
varsa bunlar ocuklar tablosunda nasl belirleyebiliriz? Bu iki tablo
arasnda iliki salayan alanla! Veritaban tasarmnda en zor nokta,
tablolarda gereksiz yere tekrar nlemek amacyla alanlar baka
tablolara aktarmak gerektiinden sz ettiimiz srada, tablolar arasnda
iliki kurmamz gerektiini belirtmitik. Ikinci blmden hatrlyorsanz,
Aile tablosuyla ocuklar tablosu arasndaki ilikiyi, yani hangi ocuun
hangi aileye mensup olduunu Aile Sra No alanndaki bilgiyi iki tabloda
ortak kullanarak biliyoruz. Baka bir deyile bir ocuun Aile Sra No
alanndaki deer, bu ocuun hangi ailenin yesi olduunu gsteriyor.
Sorgu srasnda Access 2000, yle dnebilir: Hmm. Istanbullu bir
48
kiiyi seeyim; sonra bu kiinin Aile Sra No alanndaki deeri, ocuklar
tablosundaki ayn adl alanda arayaym; eer bu iki deer ayn ise bu
ocuun adn alp, Istanbullu kii ile birlikte kaydedeyim. Accessin
dndn uygulayabilmesi iin, ona her iki tablodan Aile Sra No
alann da vermemiz gerekir. O halde nce ak olan ocuklar
tablosunun, sonra da yeniden Aile tablosunu seerek, Aile Sra No
alanlarn saa aktarn. Bu kutuda iimiz bittiine gre Tamam
tklayabilirsiniz. (Sorgu ka tablodan ka alan semeyi gerektiyorsa, o
kadar alan seebilirsiniz. Buradaki rnek bu alanlar gerektirdii iin
burada duruyoruz; sizin rneiniz baka tablolardan baka alanlar
gerektiyorsa, semeye devam edin.)
Basit sorgu sihirbaznn ikinci penceresi, sorgu sonucu oluturulacak
tabloda ka kayt olacan belirler. Varsaylan deer, setiiniz
tablolardaki tm kaytlarn sorgu sonucu oluacak tabloya alnmasdr.
Fakat diyelim ki size sorgu sonucu oluacak tablonun ilk 5, 25 veya
100 kaydn ieren zet bir tablo da oluturabilirsiniz. zet tablo iin
zetk seeneini sein ve zet Seenekleri dmesini tklayn. Bu i
bittikten sonra veya Ayrntl seeneini seerek, Ileriyi tklayabilirsiniz.
nc pencerede yeni sorgunuza isim vermeniz, Sonu tkladnzda
sorgunun icra edilmesini mi, yoksa sorguda sihirbazn yapmad
deiiklikleri yapmak zere tasarm grnmnn almasn m
istediinizi belirtmeniz gerekir. Burada yardm isteyip istemediinizi
belirteceiniz bir baka seenek daha var. Tasarm g sorgular
yaptnzda, Access 2000in yardm penceresinin alm olmas size
kolaylk salar. imdi, sorgunun tasarm ile ilgili ilerimiz bitmedii iin
ikinci seenei iaretleyerek Sonu tklayalm.
Access 2000, setiiniz iki tabloyu sorgu tasarm penceresinin st
blmnde gsteriyor. Iki tablo arasndaki iliki izgisine dikkat edin;
bu ilikiyi ikinci blmdeki altrma srasnda kurmutuk. Access,
setiiniz alt alan, deerleri ne olursa olsun, btn kaytlar ile
semeyi (ve bunu yaparken iki tabloyu birletirmeyi) salayan bir
sorgu tasarm neriyor. Btn alanlarn seildiini, sorgu tasarm
penceresinin alt yarsndaki klavuzda, Alan satrndaki alan adlarndan
anlyoruz. Bu satra yazlan alan adlarn inceleyin; tablo ad ile
tablonun alan ad nasl birletiriliyor? Ikinci satrda ise tablonun ad
belirtiliyor. Srala satrnn bo brakldna dikkat edin. Gster
satrndaki kutularn iaretli olmas bu alann sorgu sonucu
oluturulacak tabloda gsterilecei anlamna geliyor. Ve son olarak
lt satrlarnn bo olduuna dikkat edin.
49
Biz sorgumuzun sadece ocuklar olan Istanbullular kapsamasn
istiyorduk. O halde, ehir alannn stununda, lt satrna Istanbul
yazmamz gerekiyor, ki sadece Istanbullular seilsin. Peki bunlar
arasndan ocuklar olanlar nasl seeiz, Access ile alma konusunda
ustalnz ilerledike, bu tr artl semeleri (SQL deyiminde eer
art geen sorgular) oluturma becerisi de edineceksiniz. Fakat
imdilik byle bir sorgu deyimi oluturmaya gerek yok: Access,
ocuklar listesindeki Ad deerlerini seerken, bunlarn Aile Sra No
deeri Aile tablosunda Aile Sra No deerine denk gelmeyen kaytlar
semeyecektir. (Aile tablonuzda ocuksuz Istanbullu dostlarnz,
ocuklar tablosunda da Istanbullu ailelere mensup olmayan ocuklar
bulunmasn salayn, ki BSSin gerekten ileyip ilemediini
snayabilelim.) imdi sorgu tasarm penceresinde ehir stununda
lt satrna Istanbul yazn. Sorgu sonucu oluacak yeni tablomuzda
iki ayr Aile Sra No stununa gerek olmad iin ocuklar tablosundan
alnacak Aile Sra No stununun Grntle satrndaki iareti
kaldrabiliriz; fakat BSSin tablonun iliki bandan nasl yararlandn
grmek iin imdilik bu iareti kaldrmayn. zetle, Access 2000 BSS
sihirbaznn tasarmna sadece ehir alannda lt olarak Istanbul
kelimesini eklemi olduk. Bu srada Access 2000in ara buuunda
nlem iareti eklinde bir simge belirdiini gryor musunuz? altr
isimli bu ara, Access 2000e Bu sorguyu icra et ve sorduum sorunun
cevabn bana tablo alarak gster! komutunun ksayoludur. imdi bu
simgeyi tklayalm.
Ite sorumuzun cevab: Aile listemizde yer alan ehir alanndaki deer
Istanbul olan ve ocuklar tablosunda kendilerine ait ocuk bulunan
dostlarmzn listesi! Access ile alma becerinizi arttrdka, her
ocuu mensup olduklar aile ile ayn satra ocuk 1, ocuk 2 ...
eklinde yeni stunlar halinde sralamay da salayabilirsiniz.
Bu sorgunun verdii sonular doru bulmuyorsanz, tekrar tasarm
grnmne dnebilirsiniz. Bunun iin Access 2000 ara ubuunda
tasarm grnm simgesini tklayn. Sorgunun tasarmnda istediiniz
deiikleri yaptktan sonra altr simgesini tklayabilirsiniz. Sorgunun
istediiniz sonucu verdiini grdkten sonra kapatmaya kalktnzda
Access 2000 sorguyu veritaban dosyasnn iinde kaydededecektir.
Bir BSS tasarlamaya altnz srada setiiniz tablolar ilikili deilse,
Access 2000 sizi uyarr ve bu ilikiyi kurmadan devam etmek istemez.
Sorgu tasarm srasnda setiiniz tablolar arasndaki iliki izgisini
silerek sorguyu altrrsanz, anlaml olmayan sonular alrsnz.
50
Ister insanlar arasnda, ister tablolar arasnda olsun, iliki zor eydir;
itina ve dikkat, nceden planlama ve sihirli bir anahtar ister!
Insanlararas ilikide sihirli anahtar nedir sorusunu Access 2000e
ayrlm bu kitapta ele alamayz. (Zaten bu konu bu kadar bir
kitapn kapsamn aar.) Fakat hemen belirtebiliriz ki, Accesste
baarl bir veri-ilemin sihirli anahtar Birincil Anahtardr: tablolar
arasndaki ilikiyi bu Anahtar ile kurarz, ve greceimiz gibi, daha bir
ok kapy bu anahtarla aarz.
Ikinci blmdeki altrmay yaptysanz, oluturduunuz her tablonun
tasarm grnmn kapatrken, Access 2000nin bu tabloda bir
Birincil Anahtar tayin edilmediini vurgulayarak sizden srarla bir alan
Birincil Anahtar olarak belirleminizi istediini grm olmalsnz.
Neden? nk birincil anahtar her tabloya, daha sonra bir baka tablo
ile ilikilendirmek istediinizde bu ilikide zgn kiiliini verecektir.
Birincil anahtar olarak belirlenen alandaki bilgilerin benzersiz olmas
gerekir. Access sizi buna zorlamaz, ama birincil anahtar alanndaki
bilgileriniz her kayt iin benzersiz deilse, neden birincil anahtar olarak
atam olabilirsiniz? Birincil anahtar, bir kayd, bir baka tablodaki bir
kaytla birletirmekte kullanacamz anahtardr. Birincil anahtarn
dier ilev ve yararlarna ksaca deindikten sonra kayt birletirmedeki
rolne dneceiz.
Her tablonun bir, ama sadece bir, Birincil Anahtar olabilir. Access
2000, her tablonun birincil anahtarn otomatik olarak endeksler (ve bu
sayede veritaban daha hzl alr). Tablonuzda siz bir alan Birincil
Anahtar olarak atamadysanz, Access 2000 bir birincil anahtar alan
oluturmak ister; bunu onayladnzda bir otomatik say alan aar;
tablonuzda zaten birinci alanda otomatik say tr bir veri varsa,
Access 2000 bu alan birincil anahtar olarak atar. Bu sebeple, iyi bir
tablo tasarm ilerde kullanmayacak bile olsanz, birinci alan otomatik
say olarak belirlemeyi gerektirir.
Birincil anahtar, hemen hemen daima sadece bir alandan oluur. Fakat
Access 2000, ancak ok pahal veritaban Server programlarnn
yapabilecei bir imkana da sahiptir: veri-ilem iiniz birden fazla
alandan oluan Birincil anahtar kullanmanz gerektiriyorsa, bunu
yapabilirsiniz. ok-alanl Birincil Anahtar, ileri dzeyde veri-ilem ve
sorgulama bilgisi gerektirir.
Her veri tr birincil anahtar olamaz: birincil anahtar olarak
kullanamayacanz veri trleri, Internet adres balants (kpr), OLE
ve not trleridir. Buna gre, metin, say, tarih/saat, para birimi,
Evet/Hayr, ve otomatik say alanlar birincil anahtar olarak
51
kullanlabilir. Tablolarnz, birincil anahtar alanna gre otomatik olarak
sralanr. (Eer bir Evet/Hayr alann birincil anahtar yapmaya
kararlysanz, tablonuzda en fazla iki kayt olmas gerekir. Neden?)
Birincil anahtarn tabaloda birinci alan olmas gerekmez; herhangi bir
alan birincil anahtar olabilir. Fakat kendinizi tabolalarnzda birincil
anahtar arama zorluundan kurtarmak iin daima birinci alan birincil
anahtar yapacanz veriye ayrmanz iyi bir alkanlk olur.
-irincil Ana+tar *ayinin"e P )o.tas
Tablomda hangi alan birincil anahtar yapmalym? sorusu kanlmaz
olarak sorulacak sorudur. Bu sorunun bir cevab olabilir: Benzersiz veri
ieren alanlardan birini birincil anahtar yapn. Birincil anahtar
seiminde anahtar kelime, benzersiz kelimesidir! Seeceiniz
alandaki veri, her kayt iin zgn olmaldr; baka hi bir kaytta
tekrar etmemelidir. Kiilerin adlarn, soyadlarn ieren alanlar zgn
olamaz. renci numaralar, ara plaka numaralar da bir ka yl sonra
tekrar baka renciye veya araca verilebilir. Telefon numaralar bir
lke iin zgn olabilir (her blgenin kodu farkl olaca ve ayn blge
kodunda benzer numara bulunmayaca iin), ama veritabannzda
rnein blge kodu ayn olan Istanbul ve New York kentlerindeki
dostlarnzn telefon numaralar varsa, zor bir tesadf bile olsa, ayn
numara bulunabilir.
Birincil anahtar alan belirlerken, tablonuzda zgn-benzersiz veri
bulunan alan arayn. Btn alanlarnzdaki verilerin tekrar etmesi
ihtimali varsa, yeni bir alan an ve iine otomatik say koyun.. Gerisini
Access 2000 dnsn!
Bir tabloda birincil anahtar alan tayini son derece kolaydr. Tabaloyu
tasarm grnmnde an; birincil anahtar olarak atamak istediiniz
alann adnn bulunduu kutuyu sa-tklayn ve alacak mende birinci
madde olan Birincil Anahtar maddesini sein. Bu alann adnn
nndeki kutuda kk bir anahtar simgesi belirecektir.
Birincil anahtarn veritaban iin nemini ortaya koyacak kk bir
deney yapalm ve sonra birincil anahtarn birincil grevi olan tablo
ilikilendirme konusuna dnelim.
Yukardaki altrmay yaptysanz ocuklar tablosunu (veya herhangi
bir alan Birincil Anahtar olarak tayin edilmi bir baka tabloyu) an,
ve yeni bir satrda birincil anahtar alanna mevcut deerlerden birini
tekrar yazn. Iinizin bittiini belirtmek zere baka bir hcreyi
tklayn; Access 2000 hemen hata mesaj verecektir:
52
Birincil anahtar alanndaki verinin zgn olmas gerekir; yoksa bu
anahtar asl grevini yapamaz.
Tablolar arasnda iliki kurmak suretiyle, veritaban dosyamz dz
veritaban olmaktan kurtardmz sylemitik. Tablolar aras iliki,
Access 2000in daha hzl sorgu icras yapmasn salar; veri-ilem
ilerimiz daha verimli olur. Bu sayede verilerimizi gncelletirirken,
btn tablolar elden geirmek ve hatta yeniden girmek zorunda
kalmayz; sadece gncelletirilmesi gereken tabloya ek veya bu
tabloda deiiklik yaparz.
Bir firma dnelim: en az 200 firmadan hammadde alyor ve en az
500 bayie maml madde veriyor. Bu firmalarn adreslerinden, alnan
hammadde ve verilen maml maddelerin zelliklerine kadar, diyelim ki
2 bin stun dolduran verilerimizi tek tabloda topladmz varsayalm.
Byle bir tabloda, aldmz mallara ilikin bilgi stunlar, sattmz
mallara ilikin satrlarda bo kalrken, sattmz mallara ilikin bilgi
stunlar aldmz mallara ilikin satrlarda bo braklmak zorundadr.
Bu hem gereksiz yere ikin bir veritaban dosyasna yol aar, hem de
veri giriinde saysz hatalara sebep olur. A firmasndan aldmz yeni
bir mala ait yeni bir kayt girerken, firmann adndan adresine, faks
numarasndan posta koduna kadar btn bilgileri yeni satra tekrar
yazmak zorunda kalrz. Bu, yeni yazm hatalarna davetiye kartmak
demektir. Tekrar eden bu bilgilerin dosya boyutuna bindirecei yk
dnn!
Verilerimizi tek tabloda toplamann sakncalarn anladk. Ve diyelim ki
elimizde byle, be veya alt tabloya blnm bir veritaban var.
imdi, son 3 ay iinde mal aldmz firmalarn bir dkmn kartmak
istiyoruz. Be-alt ayr tabloyu mu kada dkeceiz? Bu ayr ayr
tablolara blnm bilgileri nasl birletireceiz? Baka bir deyile, ayr
tablolara bldmz verileri iare yarar, anlaml diziler haline
getirmek iin nasl birletirebiliriz?
Bunu, tablolar herbirinin dieri iin anlaml tek zgn alanndan, yani
Birincil Anahtarlarndan birletirerek yapabiliriz. Veritabannz bu
birden fazla tabloya blerek ve herbirine zgn birincil anahtar alanlar
koyarak tasarlasanz bile, ayn veritaban iinde yer alyorlar diye
tablolarnz kendiliklerinden iliki kurmazlar. Bunu bizim salamamz
gerekir. Kendi tablolarmzda kendi ilikilerimizi oluturmadan nce,
Access 2000nin bunu nasl saladn grmek, iliki konusunda bize
daha iyi fikir verecektir. Bunun iin Access 2000i altrn; Yeni
veritaban oluturmak zere alan pencerede Veritabanlar sekmesini
sein ve Stok Ynetimi ablonunu iaretleyin. Yeni bo stok ynetimi
53
veritabannz oluturulduunda, eer Access penceresi iinde
kltlm durumda ise veritaban penceresini bytn; Switchboard
ad verilen veritabann kullanmanz iin oluturulan grafik arayz
kapatn. Stok Ynetimi1 adl yeni stok ynetimi veritabannzn
nesnelerinden Tablolar setiinizde, yedi adet asl tablo
oluturulduunu greceksiniz: rnler, stok hareketleri, kategoriler,
alanlar, sipari formlar, reticiler ve nakliye yntemleri. Stok
ynetimi konusu ile hi ilginiz yoksa bile, sadece iliki konusunu
kavramak iin, bu tablolarn bir firmann elindeki stoklar takip iin
gerekli ve yeterli olduunu varsayalm.
imdi, Aralar mensnden Ilikiler maddesini sein. Karnza una
benzeyen bir pencere alacaktr:
Alan penceredeki kutular arasndaki izgiler buradaki grntye
benzemiyorsa, kutular Mouse iaretisiyle balklarndan tutarak
srkleyebilir ve konumlarn buradakine benzer ekle getirebilirsiniz.
Bu pencerede, kutularn balnn tablo adlarn ierdiine dikkat edin.
Kutularn iindeki maddeler ise tablolardaki alanlarn adlardr. Her
tablonun kutusunda bir alan adnn koyu yazldn gryor musunuz?
Bu, o tablonun birincil anahtar olan alandr. Baz alanlardan kan
izgilerin dier bir kutudaki alana balandn gryorsunuz. Dikkat
ederseniz, aralarnda izgi bulunan alan adlarnn ayn olduunu da
greceksiniz.
Bu izgilere iliki denir; tablolarn birbirleri ile hangi alanlarndan
ilikide olduklarn gsterir. emaya veya Access Ilikiler Penceresine
tekrar bakarsanz, iliki izgilerinin bazlarnn sol ucunda 1, sa
ucunda sonsuz iaretinin bulunduunu, baz ilikilerde iaretlerin yer
deitirdiini ve dierlerinde ise izgilerin iaretsiz olduunu
greceksiniz. Bu iaretler kurulan ban niteliini gsterir; ban nitelii
ise daha sonra iki tablo arasnda yaplabilecek birletirmede hangi
kaytlarn hangi kaytlarla birletirilecei veya Accessin deyimiyle
eletirileceini tayin eder. Bu tanmla biraz ifreli grnyorsa da
Accesste kurabileceimiz ilikilerin niteliklerini ele alnca manzara
aydnla kacaktr. Tablolarnzn arasnda tr iliki olabilir:
-ire bir ili6.i: Ilikilendirdiiniz iki tablodan birincisi ile ikincisi
arasnda sadece bir kayt eleebilir. Bu tr ilikilendirmeyi
tabalolarmzda sk kullanmadmz greceksiniz; nk genellikle
byle tek gerekli tablo yapmayz.
-irBo. ili6.isi: Birbirine baladmz iki tablodan birindeki bir kayt
dier tabloda birden fazla kaytla eleebilir. Ikinci blmdeki
rneimizi hatrlarsanz: bir ailenin birden fazla ocuu olabilir; fakat
54
her ocuun sadece bir ailesi olabilir. Dostlarnmzn ocuklaryla
birlikte bir tablosunu edinmek istersek, ocuklu dostlarmzn ad
yeni tabloya ayr satrda yazlacak, iki ocuklu dostlarmzn adlar
iki, tek ocuklu dostlarmzn adlar ise bir kere girecektir. Neden?
nk aile ba (Aile Sra No alan), ocuklar tablosunda ok kayda
iaret ediyor.
o.Bo. ili6.isi: Ilikilendirdiimiz tablolardan birincisinde birden
fazla alan, ikincisinde birden fazla kayda (ve tabi ikincisindeki birden
fazla alan birinci tablodaki birden fazla kayda) iaret ediyorsa, bu kez
tablolar arasnda ok-ok ilikisi var demektir. rnek tablomuzda byle
bir durum yok, ama bir sipari veritaban dnn: her bir sipari
emrinde birden fazla mal sipari ediliyor olabilir; mal tablosunda ise
her bir mal birden fazla sipari tablosunda grnyor olabilir. Byle bir
ilikinin sonucu ortaya kacak nc tabloda hem hem her bir
sipari, hem de her bir mal birden fazla satrda grnecektir.
imdi bu bilgilerin nda biraz nce oluturduunuz Stok Ynetimi
veritabannn ilikiler penceresine bakalm. imdi bu veritabanndaki
dosyalar kullanarak, firmamzn verdii siparilerle ilgili ve siparii
veren personele gre sipari miktarlarn gsteren yeni bir tablo
yapabilir miyiz? Yapabiliriz. Siparii veren Personel, hangi tabloda
hangi alandaki bilgi ile bulunacak? alanlar tablosundaki alanNo
alanndaki veri ile. Peki, bu alandaki kaytlar, hangi tablodaki hangi
alanda bulunan kaytlarla eletirilecek? Sipari formlar tablosundaki
alanNo alanndaki kaytla. Yani alanlar tablosundaki alanNo
alanndaki veri Ahmet alkan arkadamza ait 812 ise ve bu deer,
Sipari formlar tablosundaki kaytlarda alanNo alanndaki deerlerle
eleiyorsa, bu kayt yeni tablomuza alnacak; sonra srasyla dier
deerler taranacak, eleenler yeni tabloya dahil edilecektir. (Yeni
tablo nerede ve nasl oluacak? sorusunu imdilik sormayn; bunu
Sorgu ile yapacaz; ve daha sonra ele alacaz.) alanlar
tablosundaki alanNo alannda Mehmet Tembelolu arkadaz
belirten 813 eklindeki veri, Sipari formlar tablosundaki kaytlarda
alanNo alanndaki hi bir veri ile elemiyorsa ne olacak? Yeni
tabloda 813 eklindeki alanNoyu ieren bir kayt olmayacaktr. Ve
muhtemelen Mehmet Tembelolu, neden hi sipari vermediini izah
etmek zorunda kalacaktr!
Tablolarmz arasnda iliki oluturma iini kendimiz yapmak istersek,
yine biraz nce atmz Aralar mensnden Ilikiler maddesini
geerek atmz pencereyi amamz gerekir. Ikinci blmdeki Adres
Defteri altrmasn yaptysanz, imdi bu veritaban dosyasn
aabilirsiniz. Bu altrmay yapmad iseniz, imdi ikinci blme dnp
bu dosyay oluturabilirsiniz! Veritaban aldnda veya tablolar
55
oluturma iini bitirdiinizde Aralar mensnden Ilikiler maddesini
sein. Karnza una benzeyen bir grnm gelecektir:
Biz kurmadmz halde iki tablomuz arasndaki bu iliki, ocuklar
tablosunu olutururken, Aile Sra No alannn doldurulmas iin Aile
tablosunun ayn adl alanna girilmi kaytlara baklmasn istemi
olmamzdan kaynaklanyor. Burada grdnz izgiyi ortasndan sa
tklayn ve alan menden Sil maddesini sein; Access silme ilemini
onaylattrmak istediinde Eveti tklayn. imdi iliki oluturmaya
sfrdan balayabiliriz.
nce bir kere daha kurmak istediimiz ilikinin amacn tekrar edelim:
yeni adres defterimizi oluturduumuz srada yle bir an olabilir ki,
dostlarmzn ocuklarn gsteren, veya ocuklarn ailelerine gre
sraland bir liste yapmak isteyebiliriz. Byle bir yeni tablo
oluturmaya kalktmzda, Accessin hangi ocuun hangi aileye ait
olduunu bilmesi gerekir. Bunu iki tabloyu ilikilendirerek veya baka
bir ifadeyle Accesse, hangi ocuun hangi aileye ait olduunu nasl
belirleyeceini syleyerek yapabiliriz. Accesse unu sylemek
zorundayz: ocuklar tablosundaki kaytlarla Aile tablosundaki kaytlar
birletirirken birinci tablonun Aile Sra No alanndaki deerin ocuk
tablosundaki kaydn ayn isimli alanndaki deerle eleip
elemediine dikkat et; eer bu veriler ayn ise o zaman bu ocuk o
aileye ait demektir; iki kayd birletirebilirsin.
Bunu sylemenin yolu ise ok kolay: Ilikiler tablosuna ait kutudaki
AileSraNo satrn Mouse iaretisiyle tutup, gtrp ocuk
tablosundaki AileSraNo satrnn zerine brakn. (Ilikiler penceresini
atnzda tablolarna ilikin kutular gremiyorsanz, Ilikiler
mensnden Tablo Gster maddesini; alacak kutuda kaytlar
arasnda iliki kuracanz, dolaysyla grntlenmesini istediiniz
tablolar seerek Ekle dmesini tklayn.)
Srkleme srasnda Mouse iaretisinin dikdrtgen iliki simgesine
dntn greceksiniz (iaretli). Mouse iaretisi brakacanz yere
dikkat etmelisiniz: Access 2000, drtgeni hangi alan ad zerinde
brakrsanz, o alan ilikilendirir. Mouseun sol dmesini braktnz
anda Ilikileri Dzenle diyalog kutusu alacaktr.
Burada solda ilikinin balad tablo ve alan ile ilikinin kurulduu
tablo ve alan gsterilmektedir. Her ikisinin de seme dmelerini
tklayarak baka alanlar seebilirsiniz. Bu listenin altnda, Bilgi
tutarllna zorla seeneine iaret koyarsanz, Access 2000 size iki
seenek daha verir: ilikinin sol tarafndaki alan gncelletirilirse, bu
56
ilikiye dahil tablolarn da gncelletirilmesi, alan silinecek olursa dier
tablodaki kaytlarn da silinmesini salayabilirsiniz. (Gncelletirme
kullanl bir seenek olmakla birlikte, silme ilemini otomatik hale
getirmek, istemeden bilgi kaybna uramanza yol aabilir.)
Ilikileri Dzenle kutusunun sa tarafndaki dmelerden Birletirme
Tr dmesini tklaksanz, ilikinin yn ve trn belirleme imkann
veren, seenekli Birletirme zellikleri kutusunu am olursunuz.
Burada yapacanz tercihler, hangi tablodan hangi kaydn alnacan
belirler. (Srasyla her seenei setiinizde, iliki izgisinin
ucundaki oklarn ynnn nasl deitiine dikkat edin.)
Kutular sarsayla kapattnzda, iki tabloyu ilikilendirmi, baka bir
deyile Access 2000i bu tablolar kullanarak yapacanz veri-ileme
hazrlam olursunuz. Bir veritabanndaki tablolar arasnda ilikileri
olutuunuz zaman Access 2000, hi bir yapmayacak, sz gelimi
ortaya yeni bir tablo veya rapor kartmayacaktr. Bunu yapmas iin
gerekli talimat daha sonra vereceiz. imdilik sadece Accesse, bu
talimat yerine getirmesi iin gerekli bilgiyi vermi, veritabanmzn
tablolar arasndaki balar tantm olduk.
Access 2000in veri-ilem ileri iin yapmas gereken bir dier hazrlk
ise Endeks kartmaktr. Veritabanmzn tablolarn neden
endekslettirmek isteriz? Daha sonra yapacamz veri-ilemleri hzl
olsun diye? Access 2000n endeksi, tpk bir kitabn arkasndaki endeks
gibi alr: aradnz kolay bulursunuz. Burada bulma ilemini kitap
okurundan farkl olarak kullanc deil Access yapmaktadr. Access,
kendi endekslerini, vereceiniz sorgu talimatlarn icra ederken,
tablolar sraya sokarken, rapor olutururken ve arama yaparken
kullanr.
Kpr, not ve OLE nesnesi ieren alanlar dndaki tr alan trleri
endekslenebilir. Sadece Birincil Anahtar olan alan deil, btn alanlar
(tr uygunsa) endekslenebilir; birincil anahtar alan otomatik
endekslenir. Endeks, sorgu, sralama ve aramay hzlandrr; fakat bir
veri tabannda ne kadar ok alan endeksleniyorsa, Access 2000in
veriilem hz o kadar azalabilir. Access 2000e tablo tasarm srasnda,
endeks yaparken birden fazla benzer kayt bulunmas halinde ne
yapmas gerektiini biz syleriz. Tablo tasarm penceresinde bir alan
trn tkladnzda, alan tr elverili ise, pencerenin Alan zellikleri
blmnde Sral satr belirir. (Access 2000, endekse yardm
dosyalarnda dizin derken burada Sral demeyi tercih ediyor. Ama
bu kadar kusur, kad kznda da olur!) Bu satrn iini ve sanda
belirecek seme okunu tklarsanz, seeneiniz bulunduunu
57
grrsnz: Endeks yapma! anlamna Hayr ; Endeks yap, ve
tekrarlara aldrma! anlamna Evet, Tekrarlama Var; ve Endeks yap
ve bu arada tekrarlar yakala! anlamna Evet, Tekrarlama Yok. Bu
sonuncu tercihi seerseniz, Access, endekslenmi alanlarda, tm
kaytlarn benzersiz olmasna dikkat eder ve sizi uyarr.
Bylece, veritabanmz birincil anahtarlar, ilikileri ve endeksi ile veri-
ileme hazrlam bulunuyoruz. Bundan sonra, tablolarmz
sorgulayabilir; tablolar ve sorgulardan raporlar hazrlayabiliriz.
Verilerimizi, kelime ilem programnn iinde tablolar oluturup, bu
tablolarn iine yazmyorsak, bunun bir nedeni olabilir: Verilem
programlarnn sorgu arac. Sorgu veya Query, veritaban fikri ortaya
atld gnden beri var. Hatta, veritaban dosyalarnn, dier bilgisayar
kayt dosyalarndan ayrmasn salayan unsur, sorgudur. Bir
veritaban dosyasndaki bilgileri sorgulama ve bu verilerden yeni
bilgiler elde etme ihtiyac o kadar belirgin hale geldi ki, bilgisayar
mhendisleri srf bu i iin bir dil bile icad ettiler: Sorgu Dili (Query
Language).
Ne var ki, veritaban biimi kadar sorgulama dili ortal kaplaynca,
belli bal bilgisayar donanm ve yazlm firmalar ve niversiteler
biraraya gelerek, bu kargaaya son vermek zere kollar svadlar; ve
ortaya SQL (Structured-Yaplandrlm Sorgu Dili) kt.
!a3lan"rlm6 #or5u Dilinin 2sa *ari+i
SQL, 1980lerin balarnda Sybase firmas tarafndan UNIX ortam iin
gelitirildi. Microsoft firmas, Sybaseden ruhsatn ald bu teknolojiye
dayanan MicrosoftSQL Server programn 1987de Windows 3 iin
piyasaya srd. Ertesi yl, MS, Sybase ve Ashton-Tate firmalar
MSSQL-Servernn OS/2 srmn ortaklaa hazrladlar ve daha sonra
IBMLin de katld bu aba 1991e kadar srd. Ashton-Tatein bu
birlikten 1990da ekilmesi zerine, Sybase ve MS yeni bir anlama
yaparak, dili ve Server, Windows NT ortam iin birlikte gelitirmeye
baladlar. Bu abann sonucu SQL Server program oldu. Bu program,
bugn 7nci srmndedir.
Bir taraftan endstri apnda geerli bir teknoloji ve bu teknolojinin
balca arac olan bir dilin ad olarak SQL, dier taraftan Microsoft
firmasnn bu teknoloji ve dili kullanan bir programnn adnda (SQL
Server) kullanld iin, sadece Microsofta ve Windows ortamna ait
sanlabilir. Bu doru deildir. SQL, bugn piyasada bulabileceiniz belli
bal veritaban oluturma ve veri-ilem programlarnn ortak dilidir.
58
Microsoft Access, 1992 ylnda dnyaya geldi; ve ilk gnden itibaren
tek bana bir veritaban oluturma ve ileme program olarak deil,
fakat daha byk veritaban dosyalarna, veri bankalarna balanabilen
ve oradaki verileri ileyebilen bir program olarak tasarland. Access
2000, Access Projesi (Dosya mensnden Yeni maddesini ve alan
ablon kutusunda Proje (Yeni Veritaban) adl simgeyi tklayn)
dosyalar oluturarak, SQL Server dosyalarna ulaabilir; bu dosyalarda
SQL sorgular altrabilir.
Iyi bir Access kullancs, bu programla byk veritaban mimarisine
adam atabilir; ileri dzeyde veri-ilem tekniklerini renebilir. Veri
Madencilii (Data Mining) teknolojileri, Online Analytical Processing
(OLAP) teknikleri ve gnmzde veri ynlendirmeli Web uygulamalar,
SQLe dayanan gelimelerdir. Accesste receiniz SQL, size bu
teknolojilerie ilk adm atmay salayacaktr.
Accesste SQLe ilk adm ise daha nce grdmz Szme ileminin
son blmnde ksaca szn ettiimiz Gelimi Szme/Sralama arac
ile atlabilir. Aslnda Accesste yaptmz seme veya Form yoluyla
szme ilemleri, bir sorgu ilemidir; ancak bu sorgunun SQL komutunu
(veya Accessin kulland kelimeyle, deyimini) Access kendisi
oluturur. Gelimi Szme/Sralama (GSS), dier szme ilemlerine
gre ileri saylrsa da, bir sorgu deyimi (SQL komutu) yazmann
yannda basit saylabilir. Bu sebeple, tabir yerinde ise Accessin
destekledii bir sorgu gelitirme ilemi olan GSSy sorguya giri
konusu olarak ele alabiliriz. GSSy kavradmz anda sorgu tekniini
kavram oluruz. Accessin sorgu teknii ise daha genel SQLe giri
saylr.
GSSnin bir sorgu arac olarak snrlamalar vardr. Sadece bir tablonun
ierdii verilerle alabilir; birden fazla tablo veya baka sorgularn
sonularn kullanamaz. Sonu itibariyle gSS de bir tabloda belirli
ltleri karlayan kaytlar grnteleme aracndan baka bir ey
deil; birden ok tabloda sorgu yapmak iin gerek sorgu aracn
kullanp, gerek SQL komutlar yaszmamz gerekir. GSSte verilere
sadece basit sorular sorabiliriz. (Daha gelimi sorgular iin, gerek
sorgu aracn kullanrz.) GSS ile yapacamz szme sonunda
grntlenen kaytlarn btn alanlar grntlenir; oysa gerek
sorguda ortaya kacak yeni tablo veya formda hangi alanlar olsun
istiyorsanz o alanlar olur. Bu snrlamalarna ramen (belki de bu
yzden) GSS, Accesste sorguya giri iin mkemmel bir adm saylr.
imdi bir tabloyu an ve Kaytlar mensnden nce Sz, sonra
Gelimi Szme/Sralama maddesini sein.
59
Bu, eer bata tablo ekleyebilseydik, sorgu hazrlama penceresinin ta
kendisi olurdu. GSS, belirttiimiz gibi sadece bir tablo ile alr; ve o
tablo da seilmi olarak karmza gelir. Bu penceresi inceleyelim.
stte, sorguda (pardon, szgete) kullanlacak tablo yer alr. Buraya
alan listesi denir. Altta ise szgeci olutururken kullanacamz,
imdilik bo olan, sorgu tasarm klavuzu yer alr. Burada sadece
szme amacyla yararlanacak da olsak oluturacamz ey gerekten
bir sorgudur. Bu blmde, Alan isimli birinci satrn birinci stundaki
kutusunun iini, sada seme oku belirince oku tklayn: yukarda alan
listesinde yer alan alan adlarnn burada sralandn greceksiniz.
Sorgu, burada olduu gibi ileri dzeyde szme ilemi iin bile olsa,
veriye soru sorulmas anlamna gelir. GSSde bir snftaki rencilerin
snav notlarn ieren tablomuza rnein Son snavda 4,5dan aa
not alm renciler kimler? diye sorabiliriz. Ya da yemek tariflerini
derlediimiz bir veritabannda, Kebaplar tablosuna Iinde biber
olmayan ve kyma ile yaplmayan kebaplar hangileri? sorusunu
yneltebiliriz. Mzik kaset ve CDlerinizin veritabanndaki Trkler
tablosuna Yavuz Bingln 1996dan sonra km kaset ve CDleri
hangileri? diye sorabiliriz. Ya da elimizdeki Adres Defteri veritabannda
Aile tablosuna Istanbul ve Nidede oturan ve kart yollamam gereken
dostlarm kimler? eklinde bir soru yneltebiliriz.
Bunun iin, Alan srasnn birinci stundaki kutusunun seme okunu
tklayarak, alan listesinden ehiri sememiz gerekir. Sonra, GSSnin
sadece szme deil ayn zamanda sralama yaptn hatrlayarak,
ikinci sradaki Srala kutusunun sandaki seme okunu tklayarak,
Artan, Azalan ve Srasz seeneklerinden Artan seelim. Ve sra geldi,
szme iin uygulatacamz ltleri belirlemeye. lt satrnn iini
tklayp Istanbul yazyoruz. Trnak iaretlerini siz koymazsanz,
Access koyar. Istanbul VE Nidede oturan dostlarmz birlikte semek
iin, alttaki VEYA satrna da Nideyazalm. Buraya kadar, tabloya
soracamz sorunun birinci blmn sormu olduk: Istanbul ve
Nidede oturanlar. imdi sorgunun ikinci blmne geliyoruz: Kart
gndermem gerekenler. Ikinci blmdeki veritaban altrmasn
yaptysanz, KartYolla alannn trn Evet/Hayr yaptmz
hatrlyor olmalsnz. imdi, Alan satrnn ikinci stununda KartYolla
alannn sein; (Evet deerlerinin sraya sokulmasna gerek
olmadna gre ikinci satr atlayabilirsiniz) ve lt sarmna Evet
yazn. Ara ubuundaki Szgei Uygula simgesi tklayn ve tablonuzun
sadece Istanbul veya Nidede oturanlardan kendilerine kart yollamam
gerekenleri gsterdiini, dierlerinin szldn ve szgecin dier
tarafnda kaldn greceksiniz.
60
Kendi kendinizi kutlayabilirsiniz: nk sadece Accessin gelimi
szme ve sralama aracn kullanmakla kaldk; SQL komutu yazmaya
da ilk adm attk. imdi artk Accesste ciddi sorgulama ileri
yapabiliriz.
Sorgu, veriye soru sormaktr! demitik. Kimi zaman bir tablonun
cevaplayabilecei sorular, szme ve hatta sralama ile
zmleyebiliriz. Fakat elde iki veya daha ok tablo varsa ne yapanz?
Diyelim ki, siz sadece bir snfn deil, be ayr snfn retmenisiniz ve
snflarnzda baar orann etkileyen garip bir eilim farkettiniz. Sizin
derslerinizde kz renciler genellikle baarsz oluyor. Sadece bir
snfn retmeni olsanz, bu kukunuzun yerinde olup olmadn
snamak iin iki szme ilemi size sonucu verirdi. (Nasl?) Fakat be
ayr snf sz konusu olunca, her tablonun kendi iindeki yzdeler,
anlaml olmayabilir. Size btn tablolardan seme-szme yapan bir
ara gerekiyor. Ya da be tabloya birden soru sormanz salayacak bir
ara. Bu aracn ad Sorgudur.
Access'in #or5ular
aldmz Gelimi Szme/Sralama aracnn birden fazla tablo kabul
edebilenidir. apraz sorgu, verileri gruplandrarak, bunlar iin saym,
toplam ve ortalama gibi hesaplar yapar. rnein rencileri
cinsiyetlerine ve derslere gre gruplandrp, aldklar not ortalamalarn
gstermek., apraz tablo yapmaktr. apraz sorgu bir tabloda alt
iin, rnein rencilerinizin notlar derslere gre ayr tablolarda ise
bunlar bir tabloda basit seme sorgusuyla birletirmeniz gerekir. Tablo
yapma sorgusu, seme sorgusundan farkl olarak, alt zaman
ortaya bir tablo penceresi kmaz; Access, sizden daha nce ald
isimle bir tablo oluturur. Bu tablo veritabannn paras haline gelir.
Oysa dier sorgularn sonular ancak sorgu alt srada vardr.
Gncelletirme sorgusu, sorgu tasarm srasnda verdiiniz bir sabit
deeri veya verdiiniz bir deyimin o srada bulunacak sonucunu, tayin
ettiiniz bir alana yazar. Bu, Bul-Deitir gibi basit bir ara olmayp,
her kayd, belirli bir formle veya kydn kendi iindeki bir deere gre
yeniden hesaplayabilir. Ekleme ve Silme sorgular da gncelletirme
sorgusu gibi, ya farkl tablolarn kaytlarn birbirine ekler, ya da
tablolardaki kaytlar siler. Bunlarn dnda tasarm srasnda
yklediiniz ilevlerin bir sonucu olarak bir sorgu Parametre sorgusu
(verdiiniz grevi yapabilmek iin kullancdan bir deer girmesini
isteyen sorgu), SQL Sorgusu (SQL komutlarn kullanarak birleim,
dorudan sorgu, veri tanmla ve alt sorgu gibi veritabannz ODBC
yoluyla dardan kullanacak kullanclar gznnde tutarak
61
hazrladnz sorgular) ve otomatik arama sorgusu (yeni bir kaydn
baz alanlarnn otomatik olarak doldurulmasn salayan sorgu,
AutoLookup sorgusu) diye de adlandrlabilir.
Basit Seme Sorgusu (BSS) dndaki sorgular, ileri dzeyde Access
bilgisi ve hatta bir lde Programlar Iin Visual Basic (VBA) bilgisi
gerektirebilir. BSSyi iyi kavrayarak, bu ileri dzeydeki sorgular iin
mkemmel bir balang yapabilirsiniz. BSSin temel zelliklerini
sralarsak, unlar karmza kyor:
1. Sorguda birden fazla tablo kullanabilirsiniz; tablolar arasnda
oluturduunuz ilikiden yararlanabilirsiniz.
2. Sorgu sonucu sadece istediiniz alanlar grntleyebilir; bu srada
gerekli olmayan stunlar yeni sorgu sonucu tablosuna almayabilirsiniz.
3. Sorgu sonucu oluacak tabloda alanlar istediiniz stun srasna
sokabilirsiniz.
4. Seme ilemi sonucu ka kaydn grntlenmesini istiyorsanz, o
kadar kayda yer verebilirsiniz.
5. BSS (ve dier) sorgular icra ettikten sonra, sorguya konu olan
tablolarn deerlyeri deimez; baka bir deyile sorgular tablolar
sadece okur, ieriini deitirmezler. Bir sorgu iledikten sonra tablo
oluturuyorsa (Tablo Yapma Sorgusu ise) ortaya yeni bir tablo kar.
Sorguyu tekrar altrdnzda bu tablo yeniden yazlr ve Access
2000, zelletir kutusunda yaptnz uyar ayarlarna gre sizi
uyarabilir.
Ikinci blmdeki Adres Defteri altrmasn yaptysanz, bu veri
tabann an ve birlikte bir BSS oluturalm. Adres Defteri veritabann
oluturmad iseniz, aadaki admlar kendi veritabannza uygulamak
zorundasnz. Burada yapmak istediimi i veya Access 2000e
sormak istediimiz soru u: Istanbulda oturan ve ocuu olan
dostlarmz kimler, ocuklarnn ad ne?
Veritaban dosyas aldnda, veritaban penceresinde, nesneler
listesinde Sorgular satrn tklayn. Sorgular penceresinde Tasarm
grnmnde sorgu olutur ve Sihirbaz kullanarak sorgu olutur
eklinde iki ksayol greceksiniz. Pencerenin ara ubuundaki Yeni
dmesini tklarsanz, karnza daha ok imkan sunan bir sihirbazn ilk
admn ieren bir kutu alacaktr. Bu kutudaki Basit Sorgu Sihirbaz
maddesi, Sorgu nesnesi penceresindeki Sihirbaz kullanarak sorgu
olutur ksayolu ile ayn sonucu verir. Ister Yeniyi tklayp alan
kutudan Basit Sorgu Sihirbaz maddesini sein, ister Sihirbaz
kullanarak sorgu olutur ksayolunu tklayn.
62
BSS sihirbaznn ilk penceresinde hangi alanlarn sorguda bulunmasn
istediinizi belirtmeniz gerekir. Bir sorgu sadece tablodan deil sorgu
sonucundan da seme yapabilir; dolaysyla sol stteki semeli listede
veritabannzda mevcut btn tablolar ve sorgular sralanr. Bu listede
seilmi olan tablo veya sorgunun ierdii alanlar ise sol altta
kullanlabilir alanlar listesinde yer alr. Veritabanmza soracamz
sorunun birinci blm Istanbulda oturan dostlarmzn seilmesi
olduuna gre, bu kiilerin kaytl olduu Aile tablosunu semek
zorundayz. Bu alanlardan hangileri BSS sonucu oluturulacak
tablomuzda yer alsn istiyoruz? Bir kere dostlarmzn adn ve soyadn
sememiz gerekir. Seilecek kiilerin tmnn Istanbulda oturanlar
olmas iin ehir alannn da seilmesi art. Bunu yapmak iin arzu
ettiimiz alann adn bir kere tkladktan sonra ortadaki dmelerden
en stte olan saa doru tek oklu dmeyi tklyoruz. Soldaki alanlarn
tmnn sorgu srasnda kullanlabilir olmasn isteseydik, ikinci
sradaki iki oklu dmeyi tklamamz gerekirdi. Bir alan yanllkla saa
geirirsek, nc sradaki sola doru tek oklu dmeyi tklayarak
sorguda kullanabileceimiz alanlar listesinden kartrz. Bu alanlarn
tmn sorgu listesinden kartmak iin el alttaki iki oklu dmeyi
tklayabiliriz.
Veritabanna sorduumuz sorunun ikinci blm, Istanbulda oturan
dostlarmzdan sadece ocuklar olanlarn seilmesini, nc blm
ise ocuklarn adlarnn da listelenmesini gerektirdiine gre, bize
ocuklar tablosu ve bu tablodaki ocuk adlar alan da gerekiyor. imdi
Tablolar ve sorgular kutusunun seme okunu tklayarak alan listeden
ocuklar tablosunu seelim, sonra da bu tablonun Ad adl alann saa
aktaralm. Ama hemen Ileri dmesini tklamayn.
imdi bir an iin kendimizi Access 2000in yerine koyalm: Biraz sonra
bir seme ilemi yapacaz; ocuu olan ve Istanbulda oturan kiileri
seeiz. Istanbulda oturanlar semek kolay: Eer ehir alanndaki
deer Istanbul ise bu kiiyi seebiliriz. Peki bu kiilerin ocuu olup
olmadn nasl bilebiliriz? Veya yle soralm: bu kiilerin ocuklar
varsa bunlar ocuklar tablosunda nasl belirleyebiliriz? Bu iki tablo
arasnda iliki salayan alanla! Veritaban tasarmnda en zor nokta,
tablolarda gereksiz yere tekrar nlemek amacyla alanlar baka
tablolara aktarmak gerektiinden sz ettiimiz srada, tablolar arasnda
iliki kurmamz gerektiini belirtmitik. Ikinci blmden hatrlyorsanz,
Aile tablosuyla ocuklar tablosu arasndaki ilikiyi, yani hangi ocuun
hangi aileye mensup olduunu Aile Sra No alanndaki bilgiyi iki tabloda
ortak kullanarak biliyoruz. Baka bir deyile bir ocuun Aile Sra No
alanndaki deer, bu ocuun hangi ailenin yesi olduunu gsteriyor.
Sorgu srasnda Access 2000, yle dnebilir: Hmm. Istanbullu bir
63
kiiyi seeyim; sonra bu kiinin Aile Sra No alanndaki deeri, ocuklar
tablosundaki ayn adl alanda arayaym; eer bu iki deer ayn ise bu
ocuun adn alp, Istanbullu kii ile birlikte kaydedeyim. Accessin
dndn uygulayabilmesi iin, ona her iki tablodan Aile Sra No
alann da vermemiz gerekir. O halde nce ak olan ocuklar
tablosunun, sonra da yeniden Aile tablosunu seerek, Aile Sra No
alanlarn saa aktarn. Bu kutuda iimiz bittiine gre Tamam
tklayabilirsiniz. (Sorgu ka tablodan ka alan semeyi gerektiyorsa, o
kadar alan seebilirsiniz. Buradaki rnek bu alanlar gerektirdii iin
burada duruyoruz; sizin rneiniz baka tablolardan baka alanlar
gerektiyorsa, semeye devam edin.)
Basit sorgu sihirbaznn ikinci penceresi, sorgu sonucu oluturulacak
tabloda ka kayt olacan belirler. Varsaylan deer, setiiniz
tablolardaki tm kaytlarn sorgu sonucu oluacak tabloya alnmasdr.
Fakat diyelim ki size sorgu sonucu oluacak tablonun ilk 5, 25 veya
100 kaydn ieren zet bir tablo da oluturabilirsiniz. zet tablo iin
zetk seeneini sein ve zet Seenekleri dmesini tklayn. Bu i
bittikten sonra veya Ayrntl seeneini seerek, Ileriyi tklayabilirsiniz.
nc pencerede yeni sorgunuza isim vermeniz, Sonu tkladnzda
sorgunun icra edilmesini mi, yoksa sorguda sihirbazn yapmad
deiiklikleri yapmak zere tasarm grnmnn almasn m
istediinizi belirtmeniz gerekir. Burada yardm isteyip istemediinizi
belirteceiniz bir baka seenek daha var. Tasarm g sorgular
yaptnzda, Access 2000in yardm penceresinin alm olmas size
kolaylk salar. imdi, sorgunun tasarm ile ilgili ilerimiz bitmedii iin
ikinci seenei iaretleyerek Sonu tklayalm.
Access 2000, setiiniz iki tabloyu sorgu tasarm penceresinin st
blmnde gsteriyor. Iki tablo arasndaki iliki izgisine dikkat edin;
bu ilikiyi ikinci blmdeki altrma srasnda kurmutuk. Access,
setiiniz alt alan, deerleri ne olursa olsun, btn kaytlar ile
semeyi (ve bunu yaparken iki tabloyu birletirmeyi) salayan bir
sorgu tasarm neriyor. Btn alanlarn seildiini, sorgu tasarm
penceresinin alt yarsndaki klavuzda, Alan satrndaki alan adlarndan
anlyoruz. Bu satra yazlan alan adlarn inceleyin; tablo ad ile
tablonun alan ad nasl birletiriliyor? Ikinci satrda ise tablonun ad
belirtiliyor. Srala satrnn bo brakldna dikkat edin. Gster
satrndaki kutularn iaretli olmas bu alann sorgu sonucu
oluturulacak tabloda gsterilecei anlamna geliyor. Ve son olarak
lt satrlarnn bo olduuna dikkat edin.
64
Biz sorgumuzun sadece ocuklar olan Istanbullular kapsamasn
istiyorduk. O halde, ehir alannn stununda, lt satrna Istanbul
yazmamz gerekiyor, ki sadece Istanbullular seilsin. Peki bunlar
arasndan ocuklar olanlar nasl seeiz, Access ile alma konusunda
ustalnz ilerledike, bu tr artl semeleri (SQL deyiminde eer
art geen sorgular) oluturma becerisi de edineceksiniz. Fakat
imdilik byle bir sorgu deyimi oluturmaya gerek yok: Access,
ocuklar listesindeki Ad deerlerini seerken, bunlarn Aile Sra No
deeri Aile tablosunda Aile Sra No deerine denk gelmeyen kaytlar
semeyecektir. (Aile tablonuzda ocuksuz Istanbullu dostlarnz,
ocuklar tablosunda da Istanbullu ailelere mensup olmayan ocuklar
bulunmasn salayn, ki BSSin gerekten ileyip ilemediini
snayabilelim.) imdi sorgu tasarm penceresinde ehir stununda
lt satrna Istanbul yazn. Sorgu sonucu oluacak yeni tablomuzda
iki ayr Aile Sra No stununa gerek olmad iin ocuklar tablosundan
alnacak Aile Sra No stununun Grntle satrndaki iareti
kaldrabiliriz; fakat BSSin tablonun iliki bandan nasl yararlandn
grmek iin imdilik bu iareti kaldrmayn. zetle, Access 2000 BSS
sihirbaznn tasarmna sadece ehir alannda lt olarak Istanbul
kelimesini eklemi olduk. Bu srada Access 2000in ara buuunda
nlem iareti eklinde bir simge belirdiini gryor musunuz? altr
isimli bu ara, Access 2000e Bu sorguyu icra et ve sorduum sorunun
cevabn bana tablo alarak gster! komutunun ksayoludur. imdi bu
simgeyi tklayalm.
Ite sorumuzun cevab: Aile listemizde yer alan ehir alanndaki deer
Istanbul olan ve ocuklar tablosunda kendilerine ait ocuk bulunan
dostlarmzn listesi! Access ile alma becerinizi arttrdka, her
ocuu mensup olduklar aile ile ayn satra ocuk 1, ocuk 2 ...
eklinde yeni stunlar halinde sralamay da salayabilirsiniz.
Bu sorgunun verdii sonular doru bulmuyorsanz, tekrar tasarm
grnmne dnebilirsiniz. Bunun iin Access 2000 ara ubuunda
tasarm grnm simgesini tklayn. Sorgunun tasarmnda istediiniz
deiikleri yaptktan sonra altr simgesini tklayabilirsiniz. Sorgunun
istediiniz sonucu verdiini grdkten sonra kapatmaya kalktnzda
Access 2000 sorguyu veritaban dosyasnn iinde kaydededecektir.
Bir BSS tasarlamaya altnz srada setiiniz tablolar ilikili deilse,
Access 2000 sizi uyarr ve bu ilikiyi kurmadan devam etmek istemez.
Sorgu tasarm srasnda setiiniz tablolar arasndaki iliki izgisini
silerek sorguyu altrrsanz, anlaml olmayan sonular alrsnz.
65
Access ile tabir yerinde ise bu kadar uramanzn bir sonucu olmas
gerekir. Bu sonuca Rapor denir. Ilk veritaban ilem program
tasarlandnda ad Tablo ve Rapor Uygulamas idi; rapor ilk gnden
beri veri-iilemin ayrlmaz paras olagelmitir. Access 2000 de bu
gelenein dnda deildir: u ana kadar farketmi olduunuz gl
veri-ilem aralarnn ayn etkinlikle bu verilerin rapor haline
getirilmesinde de kullanldn greceiz. Access 2000, raporlarn
tablo ve sorgulardan elde eder, ya otomatik olarak, ya da sizin
talimatnzla biimlendirir ve veritabannn bir nesnesi olarak veritaban
dosyasnn iinde kaydeder. Bu raporlar Ofis 2000 ailesinin dier
yeleri olan Excel ve Word ile paylaabilirsiniz.
Access 2000nin veritaban penceresinde tablolar, formlar ve sorgular
gibi raporlarn da ayr bir nesne grubu halinde toplandn, Tasarm
grnmnde rapqor olutur ve Sihirbaz kullanarak rapor olutur
eklinde iki ksayol bulunduunu greceksiniz. Raporlar nesne grubunu
setiinizde veritaban penceresinin Yeni dmesi, bu iki ksayola ek
olarak, drt ayr rapor sihirbazn daha kullanma imkan salar.
Bunlarn arasndaki iki otomatik rapor arac belki de en sk
kullanacanz rapor elde etme yntemi olabilir. Bu iki yntemde
Access 2000 sizin iaret edeceiniz tablo veya sorgudan elde edecei
raporu kendisi biimler. Dier sihirbazlar ve tasarm grnmde rapor
oluturma yntemlerinde ise raporunuza siz ekil verirsiniz.
Rapor, ana hatlaryla tanmlarsak, bir tablo veya sorgunun alanlarnn,
alan adlar ile birlikte kat zerinde yerletirilmesi demektir. imdi
OtoRapor ve kendi tasarlayacamz raporlar ayrntl ele alalm.
Burada grdnz Otomatik Rapor: Stunlu ve Otomatik Rapor:
Sekmeli sihirbazlar, OtoRapor tekniini kullanrlar. OtoRapor yoluyla
her iki yntemde de sadece bir tablonun veya sorgunun ieriini
baskya hazr hale getirirebilirsiniz. Bununla birlikte ortaya kacak
rapor farkl olur.
Sekmeli OtoRapor: her kayd bir sraya koyar; her alan saa doru
stunlar halinde dizilir. Alan adlar, stun bal olarak kullanlr ve
ou zaman btn adlarn kada smas amacyla ksaltlr. Stun
genilikleri, btn veriyi sdracak ekilde ayarlanr. Stunlu
OtoRapor: her kayt sayfa zerinde bir grup oluturur; alan adlar
solda, alan ierikleri sada iki stun halinde dizilir. Bir kaydn alan
says ve ierikleri bir sayfaya yakn yer tutuyorsa, Access 2000 ikinci
kayd yeni bir sayfada balatabilir.
66
Ne zaman hangi OtoRaporun kullanlabileceine ilikin bir kural
koymak zordur. Baz veri trlerinde ve tablo yaplarnda stunlu,
dierlerinde sekmeli raporun ie yaradn greceksiniz. Genel bir ilke
olarak, ok kayt, ok alan ve alanlarda ksa veriler bulunan tablolarn
Sekmeli; az kayt, az alan fakat alanlarda uzun bilgiler bulunan
tablolarn ise stunlu biime daha elverili olduunu syleyebiliriz.
Tablonuza hangi otomatik raporun uygun dtn snayarak
bulabilirsiniz.
Access 2000 OtoRaporlar, Windowsun varsaylan yazcsni ve
yazcnn o andaki kat boyutu ayarlarn dikkate alarak biimlendirir.
Kimi raporlar asndan kadn dikey veya yatay olmas nem
tayabilir. OtoRaporu yeniden oluturmak ve yazcya gndermeden
nce Access 2000 iinden yazc ayarlarn deitirmek mmkndr.
Ayrca Access 2000, raporunuzun birden fazla sayfaya blnmesi
halinde stunlarn nce yatay sonra dikey, veya nce dikey sonra
yatay yazdrlmas gibi ince ayarlara da imkan verir. nc blmde
sorgular ele alrken, bir tablonun farkl alanlarn birletirerek Adres
Listesi adl bir tablo oluturmutuk. imdi bu tabloyu iki yntemle
otomatik rapor haline getirelim ve farkn grelim. Bunun iin
veritaban penceresinde nesnelerden Raporlar ve ara ubuundan
Yeni simgesini tklayn.
Burada, stte Otomatik Rapor: Stunlu seeneini setikten sonra
veri kayna kutusunun seme okunu tklayarak, veritabannda mevcut
btn tablo ve sorgular gsteren listeden, Adres Listesi tablosunu
sein. Ikinci blmde Adres Defteri veritabann oluturmadysanz
veya nc blmdeki sorgu altrmasn yapmadysanz, iinde iki
alanl tablo bulunan herhangi bir veritabann kullanabilirsiniz. Tamam
tkladmzda, Access 2000, tablodaki verileri kullanarak otomatik
tablomuzu bask nizleme penceresi halinde grtleyecektir.
nc blmdeki sorgu altrmasn yaparken sorgunun oluturduu
yeni tabloda, alan ad olarak Deyim1 ve Deyim2 kelimelerinin
seildiine dikkat etmitik. imdi bu adlarn yeni raporumuzda
kullanldn gryorsunuz. Bu adlar raporu tasarmn grmnde
aarak dzeltebilirdik. Fakat ge kalm deiliz; OtoRapor da, btn
otomatikliine ramen, dzenlenebilir niteliktedir. Buna sonra
dneceiz. Raporu incelemeye devam edersek, her bir kaydn bir rup
oluturduunu gryoruz. Alan adlar birinci stunda. alan deerleri
ikinci stunda ve btn alanlar bir grup oluturacak ekilde altalta
dizilmi bulunuyorlar. Bu arada Ara ubuuna da dikkat edin. Access
2000, raporu yazdrmak amacyla hazrladnz dnerek, size bask
nizleme penceresini am bulunuyor. Dalysyla ara ubuunda
67
tasarm grnmne gemek gerekli simgenin yannda Yazc
simgesini, raporu ekranda eitli byklklerde ve sayfa saysnda
grmenizi salayacak denetim simgilerini ve bu raporun szgelimi
Office 2000 ailesinin dier yelerinden Microsoft Word kelime ilem
program ile paylamay salayacak Ofis Balantlar simgesini
greceksiniz. Ilk raporunuzu kat zerinde grmek iin yazc
simgesini tklayabilirsiniz. Bir Access 2000 raporunun Word 2000de
nasl grndn ve nasl dzenlenebildiini Ofis Balantlar
simgesini tklayarak inceleyebilirsiniz. Hatta otomatik raporun
otomatikliine mdahale ederek, tasrm iini bu noktadan itibaren
devralabilirsiniz. Ama buna sonra geleceiz; imdi bir de Sekmeli
OtoRaporu grelim. Iki raporu yanyana inceleyebilmek iin imdilik
Access 2000in otomatik olarak kltt veritaban penceresini eski
nceki boyutuna getirelim, ve bu kez sekmeli OtoRapor aracn
kullanalm.
Veritaban penceresinde hal Raporlar nesnesi seili olmal; Yeni
simgesini tklayn ve Otomatik Rapor: Sekmeli yntemini
iaretleyerek ve Adres Listesi tablosunu (veya biraz nce kullandnz
tabloyu) seerek, Tamam tklayn. Bu kez Access 2000, alan adlarn
stunlar haline getirecek ve her bir kayt raporda bir satr olacaktr.
Her iki raporda da Tablo adnn sayfann bal olarak kullanldna,
sayfann altnda ise gnn tarihi ve sayfa numarasnn yer aldn
gryorsunuz. Bu raporda da tablodaki alan adlar stun bal olarak
kullanlyor. Bu noktada verimize hangi rapor biiminin daha uygun
dtn de kararlatrabiliriz. Buradaki rnekte, kiilerin adlar ile
adreslerinin ayn satrda gsterildii Sekmeli yntemle yaptmz rapor
daha kullanl bir liste grnm veriyor. Fakat bir kaydn btn
alanlarnn byle dzgn biimde sekmelerle ayrlmas mmkn
olmayabilir. Burada sadece iki alan var ve alanlarn ierikleri olduka
az. Alan ierikleri uzun olsayd says arttka stunlu biim veriye daha
uygun olabilir, her bir kald kendi grubu iinde topluca grmek daha
kullanl olabilirdi.
OtoRapor gl bir ara olmakla birlikte, tablo halinde uygun
grnd halde belge haline dnnce uygun olmayan sayfa veya
stun balklar kullanabilir. Veritabann tasarlayan kii olarak
Deyim1 bizim iin anlam ifade edebilir; fakat raporu sunduumuz kii
asnda burada, sz gelimi Mterinin Ad ve Soyad eklinde bir
stun bal bulunmas daha uygun debilir. OtoRaporun tasarmna
nasl mdahale edebileceimizi ikinci raporda grelim.Bask nizleme
penceresinin ara ubuunda, Tasarm grnm simgesini tklayn;
Access 2000 raporun tasarm penceresini aacaktr.
68
Ara kutusu ve tasarm klavuzu ile bu grnm, form oluturduumuz
pencereye ok benziyor! Access 2000in tasarm ara kutusu, form ve
rapor tasarmlarnda ayn ilevi yapar. (Formlarn da yazdrlabildiini
hatrlayn!) Iki tasarm grnmnn arasndaki balca fark, form
tasarmnda her formda tekrar eden sayfa st bilgisi ve sayfa alt
bilgisi blmleri ancak siz isteyince oluturulduu halde, raporlarda bu
iki blm varsayln unsur olarak yer alr. Bizim u anda yapmak
istediimiz, Deyim1 eklindeki stun baln Ad Soyad, Deyim2
eklindeki stn baln ise Adresi olarak olarak deitirmekten
ibaret. Bunun iin, tasarm penceresinde Sayfa stbilgisi blmnde
Deyim1 kelimesini Mouse iaretisi ile tarayn ve yerine Ad Soyad
yazn. Raporun mevcut unsurlarndan birinin, rnein Deyim1
kelimesinin bulunduu kutuyu tkladnnzda kutunun evresinde
seildiini gsteren tutamak iaretlerinin belirdiini ve Mouse
iaretisini bunlardan sol st kede dierlerinden byke olannn
stne gtrdnzde iaretinin el ekline girdiine dikkat edin.
Bu, kutuyu tutarak istediiniz yere tayabileceinizi gsterir. Daha
sonra Deayim2 kelimesinin yerine de Adresi kelimesini yazn. Bu
arada raporun Ayrnt blmnde tablodan alnan Deyim1 ve Deyim2
alanlarnn yer aldna, sayfann altndaki gnn tarihinin Now()
deyimi ile, Sayfa 1/1 yazsnn ise ="Sayfa " & [Page] & " / " &
[Pages] deyimi ile elde edildiine dikkat edin. Now(), [Page] ve
[Pages] deyimleri, Access 2000in tand VBA (Visual Basic for
Applications, Uygulamalar iin Visual Basic) dilinden alnma kodlardr.
Stun balklarn deitirme ilemini tamamladktan sonra, ara
ubuunda bask nizleme simgesini tklayn; raporun baslnca alaca
biimi yeniden greceksiniz; fakat bu kez stun balklar daha anlaml
hale gelmi olacak.
Access 2000in OtoRapor yetenei ne kadar gl grnse de, rapor
oluturma konusunda asl marifetinin sihirbazlar eliyle
oluturabileceiniz etiket ve grafik raporlarnda ortaya ktn
greceksiniz. Bu yetenei yakndan grmek iin rnek olarak tebrik
kartlarmzn zarfna yaptrmak zere adres etiketleri oluturalm.
/ti.et #atnalma"an &nce
Access 2000, piyasada rahata bulabileceiniz adres, dosya, gnderme
ve isim etiketlerinin ounu tanr ve verinizi bu etiketlere gre
biimlendirebilir. Access ile etiket oluturmaya balamadan nce bu tr
malzemelerin satld bir maazadan ihtiyacnza uygun ne tr
etiketler bulunduunu renin. Etiketleri satn almadan nce
bulabildiiniz mark ve modelin Access tarafndan tannan etiketler
69
arasnda bulunup bulunmadn kontrol etmelisiniz. Bunun iin
herhangi bir veritaban dosyasn an ve Etiket Sihirbazn altrarak,
imalat adn ve rn numaralarn kontrol edin. Access 2000, 12
kadar imalatnn bine varan etiket modelini tanyabilir.
Elinizde Access 2000 tarafndan tannmayan etiket stoku varsa ve
bunlar kullanmak zorunda iseniz, Etiket Sihirbaznn ikinci admnda
zelletir dmesini tklayarak kendi etiket boyutlarnza uygun bir
ablon oluturabilirsiniz.
Etiket sihirbaz, Raporlar penceresindeki Yeni simgesi tklanarak ve
alacak kutuda Etiket Sihibarbaz satr seilerek arlr. Bu pencerede
kendinize bir de tablo semeniz gerekir. Etiket sihirbaznn aslnda bir
sorgu arac olduunu grebilmek iin, bu kez kolay bir veri tablosu
deil fakat etiketin zerindeki bilgileri bir ok alandan toplayacamz
nisbeten karmak bir veri tablosu seelim. rnein, Aile tablosu, bu
amala kullanlabilir. Bu altrmay yapmadysanz, ok alanl, fakat
alan ieriklei ksa bir tablo seebilirsiniz. Tabloyu setikten sonra Ileri
dmesini tkladnzda, Sihirbaz etiket tr semenizi isteyecektir.
Elinizde gerekten yazcnza uygun etiket varsa ve bu etiket Access
2000 tarafndan tannyorsa, nce Imalat blmnde etiket
yapmcsnn adn, sonra yukardaki listeden etiketlerinizin rn
numarasn sein; etiketlerinizin gerekten yaptnz seime uygun
boyutlarda olup olmadn setiiniz rnn karsndaki boyut
llerini etiket kutusunun zerindeki llerle karlatrabilirsiniz.
nc admda etiketin grnmyle ilgili seim yapmaya balyoruz;
nce etiketimizde kullancak yaz tipini sememiz gerekiyor.
Beendiiniz bir yaz tipini, etiketinize uygun punto lsn, yaz
zelliini (kaln, italik, altizgili), ve rengini sein.
Drdnc admda iin zevkli taraf balyor: etiketin ieriini
oluturuyoruz. Setiimiz tabloda mevcut alanlar, alan listesinde
greceksiniz. nce Ad alann sein ve ortadaki saa ok simgeli
dmeyi tklayn; sonra klavyede aralk tuuna bir kere basn ve solda
Soyad alann seip, ortadaki oklu simgeyi tklayn. imdi klavyede
Enter tuuna basn; ekrandaki etiket rneinde imlecin aa satra
indiini greceksiniz. Alan listesinde Adres1i sein ve oku tklayn;
tekrar klavyede Entera basn. Imle bir aa satra inince, alan
listesinde Adres2yi sein; oklu simgeyi tklayn; Entera basn. Ve
imle drdnc satrda iken sada ehir alann sein ve oklu simgeyi
tklayn. Etiket inas bitti!
70
Ileriyi tklayarak, beinci adma geebilirsiniz. Bu admda etiketlerin
nasl sralanacan belirleyeceiz. zellikle postaya vermek zere zarf
ve paket zerine yaptrlacak veya bir toplantda katlmclarn
ggslerine takacaklar isim etiketlerini hazrladnz zaman bu nem
tayabilir.
Sonu tkladnzda raporunuz baslmaya hazr ekliyle karnza
gelecektir.
Access 2000in etkiketleri hangi sraya gre basmasn istiyorsanz, bu
alann adn iaretleyin ve ortadaki oku tklayn. Diyelim ki bir
konferansa katlacak kiilere isim etiketleri hazrlyorsunuz;
katlmclarn kayt srasnda isim etiketlerini nce soyadlarna, sonra da
adlarna gre sraya sokarak datm kolaylatrmak istiyorsunuz. nce
Soyad, sonra da Ad alanlarn ve oklu simgeyi tkladnzda Access
2000 etiketleri yazcya nce soyad alannn ieriine gre sralayacak,
sonra da bunlar kendi ilerinde adlara gre sraya koyacaktr. Bu
surette oluturduunuz bir etiketi tasarm grnmnde aarak,
biimini deitirebilir, arzu ediyorsanz btn etiketlerde ayn konumda
baslacak bir grafik resim de yerletirebilirsiniz. Bunun iin tasarm
grmn atnzda belirecek ara kutusundan Resim aracn
semeniz ve etikette resmin almasn istediiniz yeri tklamanz
yeterlidir. Resim arac, disk veya disketlerinizde aradnz grafik
dosyasn bulmanza yardmc olacaktr. Access 2000in rapor
sihirbazlarndan grafik sihirbaz ise bir tablodan en az iki, en fazla alt
alandaki verileri alarak, raporlarnza Excel tr istatistiksel grafikler
koymanza yardmc olur.
Access 2000n OtoRapor sihirbazlarnn bir eksii, bir tablonun verisi
ile rapor hazrlamalardr. Geri ok acele rapora ihtiyacnz olduunda
nce farkl tablolar bir sorgu ile birletirip, OtoRapor sihirbazna bu
sorguyu kaynak olarak kullanmasn bildirebilirsiniz, fakat yle anlar
olabilir ki ok kaynaktan ok veri kullanarak raporlar hazrlamanz
gerekir. Accessin Rapor Sihirbaz bu gibi durumlarda istediiniz kadar
tablodan istediiniz kadar alan bir raporda birletirmenizi
salayacaktr.
ok tablolu rapor hazrlamak iin de veritaban penceresinde
nesnelerden Raporlar ve ara ubuundan Yeni simgesini tklamanz
gerekir. Alacak sihirbaz, daha nceki rapor sihirbazlarna benzemekle
birlikte fark ikinci pencerede greceksiniz. Birinci pencerede raporda
kullanacanz veri tablosunu semeniz gereken kutuy bo brakarak,
Ileri dmesini tklayn.
71
Bu sihirbaz, daha nce benzerini ileri dzeyde tablo, form ve sorgu
olutururken grdmz trden, birden fazla tablodan alan
semenize imkan verir. imdi Tablolar Sorgular hanesinde, Aile
tablosunu seelim (bu tabloyu ieren Adres Defteri veritabann
yapmadysanz, herhangi bir veritabanndan herhangi bir tabloyu
seebilirsiniz). Kullanlabilir alanlar kutusunda bu tablonun alanlar
belirmi olmal. Ad, Soyad ve Einin Ad alanlarn, sadaki Seili
Alanlar kutusuna aktarn. Sonra, Tablolar-Sorgular kutusunda ocuklar
tablosunu sein ve bu tablonun alanlarndan Adn Seili Alanlara
aktarn. Bu sihirbaz istediiniz kadar tablodan istediiniz kadar alan
rapora almanza imkan verir. imdi Ileri dmesini tklayn. Bu kez
Sihirbaz, raporu nasl grntelemek istetediinizi soruyor.
Birden fazla tablodan alan setiinizde bu alanlarn birbirine ile ilikili
olmas gerekir. Aksi taktirde Access, hangi alann verilerinin hangi
alana gre yerletirileceini bilemez. Bu pencerede, her ne kadar
bozuk bir Trke ile de olsa, Access 2000 verilerin setiiniz
tablolardan hangisine gre sralanacan sormaktadr. Bizim
rneimizde Aile tablosundan aldmz bilgiler esas, ocuklar
tablosundan aldmz bilgiler Aileye gre anlam tad iin,
verilerimizin Aile tablosuna gre sralanmas gerekir. Nitekim, byle bir
sralamada, Aile tablosunun bilgilerinin st grupta, ocuklar tablosunun
bilgilerinin alt grupta toplanacan sadaki rnek dzenlemede
gryoruz. Ileri dmesini tkladmzda, Access 2000 bu kez verileri
bir alana gre gruplamak isteyip istemediimizi soracaktr. Buradaki
rnekte aileleri soyadlarna gre gruplayabiliriz. Fakat i dnyasndaki
rneklerde firmalarla ilgili bilgilerin firma adna gre gruplanmas, veya
bir firmann satnalma raporunda btn bilgilerin satnalnan maln
envanter numarasna gre gruplanmas mmkndr. Bylece bir
bakta hangi tr mal hangi firmalardan aldmz grebiliriz. Buradaki
rnekte, Aile tablosundan alnan Soyad alanna gre gruplama talep
edebiliriz.
Bu durumda kaytlarmz ailenin soyadna gre, kiinin ad, einin ad
ve ocuklarnn adlar eklinde beklere blnecek demektir. Ileri
dmesini tkladmzda verilerimizin ayrnt blmnn (rneimizde
bu blmde sadece ocuk adlar var; fakat ok daha fazla bilgi
bulunabilirdi) hangi alanlara gre sralanmas istediimizi belirlediimiz
pencereye geliyoruz. Bu rnekte ocuk adlarna gre sralamann fazla
bir anlam olmad iin Ileriyi tklayabiliriz. Fakat baka rneklerde
kaytlarn da kendi ilerinde sralanmas uygun olabilir.
imdi raporun sayfa dzeni ile ilgili penceredeyiz. Sayfada yer alacak
unsurlarn yerleim dzenini belirlediiniz Yerletir blmndeki farkl
72
seenekleri tklayarak, raporun biiminin nasl deitiine dikkat edin.
Raporun kada dikey veya yatay baslmasn da buradaki ynlendirme
seenei ile salarz. Kimi zaman bir bek veri (bir soyadndaki kii,
e ve ocuk adlar; bir firmann o firmaya ait btn alanlar, vs.) ayn
sayfaya smayabilir. Bu durumda Access 2000i btn alanlar ayn
sayfaya sdrmak zere biraz fazla aba harcamaya sevkedebilirsiniz.
Eer bu sayfanz ok skk bir grnme zorlarsa, daha sonra bundan
vaz gemeniz ve raporun tasarmn yeniden yaparak, bir alan
grubunun bittii yere sayfa sonu komutu koymanz mmkndr. Bizim
rneimizde Anahat 1 adl yerleim dzeni daha uygun olacaktr. Bu
seenei ve Ileri dmesini tklayalm.
Access 2000 imdi raporun nihai grnm iin bizden bir stil
sememizi istiyor. Access bize kullanlmaya hazr alt ayr rapor stili
sunan. Bunlarn adn setiinizde raporunuzun yaklak nasl
grneceini soldaki rnek kutusunda grebilirsiniz. Bu pencerede arzu
ettiiniz bir stili seip, Ileriyi tklayn. Ve son ekranda raporunuza bir
isim verdikten sonra, sihirbaza ya tasarm, ya da bask nizleme
penceresini amasn bildireceksiniz; nizlemeyi seerek, Sonu
tklayn.
Raporun grnmn belki beenmemi olabilirsiniz, ama adres
defterinizdeki isimlerin soyadna gre tasnif edilmesi ve isimlerin,
elerin ve ocuklarn adlarnn bir bek halinde toplanm olmasn
etkileyici bulacanza kukum yok. Sayfa dzeninin beenmediimiz
taraflarn tasarm grnmnde annda dzeltebiliriz. Buradaki
rnekte, alan adlarnda Trke karakter kullanmaktan kandmz iin
olan ve imdi hata gibi grnen (Soyadi gibi) geleri dzeltebiliriz;
ayrca soyad deerlerinin dier isimlerle soldan hizalanmasn
salayabiliriz. rnein, isimlerin etrafndaki ereveleri kaldrmak hi
de fena olmaz! Byle bir raporun her sayfasnda baslmasn istediimiz
firma logosu gibi grafik unsurlar da tasarm grnmnde sayfamza
yerletirebiliriz. Ayrca raporlarmzda, yeni renkli yazclarn
imkanlarndan yararlanmak zere fotoraf, renkli metin yazlar ve
balklar kullanabilir; ayrca belirli alanlarn arka planna renkli zeminler
koyabiliriz. Access 2000in rapor tasarm aralar masast yayncla
ta kartacak imkanlara sahiptir.
Access 2000in rapor tasarm aralarn keif faaliyetiniz srasnda,
raporlarn herhangi bir yerinde (rnein sayfa altbilgisi alannda)
dosyann ve bulunduu dizinin adn nasl yazdrabileceinizi de
aratrn. ou raporda bu bilgi, sizi veya bakasn saatlerce
aramadan kurtarr!
73
Bu Internet anda, herkesin bir Web sayfas edindiin gnmzde
Access 2000in bundan mahrum olacan dnmyordunuz,
herhalde! Btn Ofis 2000 programlar gibi, Internet, Access 2000in
de gbek ad! Bu kitapn kapsam dnda kalan dier bir ok baz
zellii ve Access Projesi denen dosya tryle oluturabileceinin
veritaban sunucu (MS SQL Server) balants sayesinde Access 2000,
sadece kendi oluturduu veritabanlarn deil, fakat ok daha byk
dosyalar iin son kullanc grevi yapabilir. Biz burada Access 2000 ile
kendi verilerinizi Internete veya Intranete ama imkanndan sz
edeceiz. Baka bir deyile, Web Sayfalarndan.
Access 2000 ncesi, Internette veri-balantl sayfa yapmak zordu.
Access 2000 ile btnletirilmi olan baz ActiveX aralar, veri
dosyalarn Internete amay olduka kolay hale getiriyor. ActiveX,
Microsoftun OLE teknolojisinin gelimii, Java applet benzeri bir
teknolojidir ve Access 2000 kullancsnn, verileri Internet sayfalarnda
kullanlr hale getirirken bu ve benzeri teknolojilerin nasl ilediini
bilmesi de gerekmez. Ne var ki Access 2000 ile oluturacanz veri-
balantl sayfalarn ileyebilmesi iin ActiveX teknolojisinin ziyaretinin
kullanaca Web Browser program tarafndan salanmas gerekir.
Bunu salayan browser ise yine Microsoftun Internet Explorer 5.0
programdr. IE5in Access 2000in veri sayfalarn gerektii gibi
yorumlayabilmesi iin de alt iletim sisteminde Winsock32 denen
sistemin bulunmas, baka bir deyile Windows sisteminin 95, 98, NT 4
veya 2000 olmas gerekir. Access 2000 verilerinizin Internette baka
iletim sistemleri ve baka browser sahibi ziyaretiler tarafndan da
grlmesini istiyorsanz. yine eski usul ODBC tekniklerinden
yararlanmak zorundasnz.
Access veri tablolarnn tasarmndan sz ederken, yeni bir veri tr
olarak Access 2000in kpr (hyperlink, Internet balant adresi) kabul
ettiini sylemitik. Bu, Access 2000in Internet ile ilgili becerilerinin
sadece biridir. Accessin gerek Internet marifeti ise veri tablolarn
Internet sayfas haline getirmesidir. Access tablolarnz Internete
amak iin HTML dilini bilmeniz ve Web sayfas tasarmna aina
olmanz da gerekmez. Access verileriniz Internete iki tazrda alabilir:
Dura5an: Access 2000 tablosunun olduu gibi HTML diline
evrilmesidir. Bir bakma Access tablosunun fotorafnn ekilmesi ve
bu fotorafn Internette yaynlanmas anlamna gelir. Kendi
sistemininizde kalan gerek Access 2000 tablosu daha sonra
gncelletirilir, veriler deitirilir veya yeni alanlar eklenirse, bu
deiiklikler Internete alm olan veri sayfasna yansmaz. Bunu
herhangi bir tablo akken Dosya mensnden Ver maddesini seerek
74
ve alacak diyalog kutusunda kayt tr hanesinde HTML Belgeleri
seeneini seerek yapabilirsiniz. Ortaya kan HTML belgesinde Access
tablosunun grntlenen alanlar ve ilerindeki deerler, bir HTML
tablosu olarak yer alr.
Orta kan belge tablonun adn tar ve artk Access 2000 ile hi bir
ilgisi kalmam demektir. Bu belgeyi Access 2000 tablosuna uygun
ekilde gncelletirebilmek iin Accessten yeniden Ver ilemi yapmanz
ve bu belgeyi yeniden kaydetmeniz gerekir. Access 2000 ile
oluturduunuz ve veri ieren bir HTML belgesini Internet sitenize
yerletirdiyseniz, eskisini yeni belgeyle deitirmeniz gerekir. HTML
tablo oluturma iini ne kadar kolaylatrm da olsanz, elle
yapacanz bu ilem, biraz sonra greceimiz ileme gre duraan
saylr.
Dinami.: Basit HTML belgesi oluturmak yerine, Veri Eriim Sayfas
Sihirbazn kullanarak, Internete bakalarnn sizin verilerinize
erimesini salayan bir HTML sayfas koyabilirsiniz. Byle bir sayfa
yapmak, Access 2000 asndan duragan veri sayfas yapmak kadar
kolaydr; fakat Internet sitesinin bulunduu Web Server, veritaban
dosyas ve Access arasnda ibirliini salamak Internetin nasl
ilediine ilikin bilgiler gerektirebilir. Bu yolla oluturacanz
sayfalarn Internete konulmas ve Internet ziyaretilerine almas
iine sonra dneceiz; imdi iin Access 2000 iinde yaplacak
blmn ele alalm. Internet veya bir firmann dahil Intranetinde
yaynlanacak verilerin bulunduu veritabann an ve Veritaban
penceresinde nesneler listesinden Sayfalar tklayn. Access, tasarm
grnmnde ve sihirbaz kullanarak veri sayfas oluturma
ksayollarnn yannda, daha nce oluturduunuz (yani zaten
varolan) bir veri eriim sayfasnn almasn nerecektir. Sihirbaz
seeneini tklayn; sorgu, form ve rapor oluturma srasnda iyice
aina olduumuz sihirbazn birinci penceresi alsn.
Bu pencere bize veri eriim sayfamza birden ok tablo veya sorgudan
alan seebileceimizi gsteriyor (Neden?). stteki Tablolar/Sorgular
listesinden Aile tablosunu, altndaki alanlar listesinden Ad, Soyad,
Einin Ad alanlarn; sonra tekrar stteki listeden ocuklar tablosunu
ve alan listesinden Adn sadaki Seili Alanlar listesine aktaralm.
Ileriyi tkladmzda gelen pencereye de yabanc deiliz. Gruplandrma
yapabilmek iin bizden alan sememizi isteyen bu pencere Aile
tablosundan Soyad alann seelim; pencerenin sadaki rnek
blmnde HTML sayfasnn kaba bir tasarmn greceksiniz. Tekrar
Ileriyi tklayalm. nc pencerede de Ayrntlar blmnn
sralanmasn arzu edip etmediimiz sorulacaktr. rnek tablomuzda
buna ihtiya yok, ama siz baka bir veri tablosunu kullanyorsanz ve
kaytlarnzn kendi iinde sralanmasnn uygun olacan
75
dnyorsanz, bunu drt seviyeli olarak yapabilirsiniz (Il, Ile,
Mahalle, Bayiin Ad, gibi). Ileriyi tkladnzda bu kez Access, ortaya
kacak HTML dosyasnn adn isteyecek, Sonu tkladnzda sayfann
tasarmn grnmnde mi, yoksa browserda grlecei gibi
grnmesini mi arzu ettiinizi soracak, ve bir de sayfanzda bir motif
uygulanp uygulanmamas konusunda karar vermenizi isteyecektir.
Sayfa motifi veya ana tema Web tasarmclnda bir sitenin btn
sayfalar arasnda grsel birlik kurmakta kullanlan bir tekniktir. Access
2000, Office 2000 ailesi programlarn (ve balca FrontPage 2000in)
kulland temalar oluturacanz Veri Eriim Sayfalarna
uygulamanza yardmc olabilir. Bunun iin buradaki motif kutusunu
iaretlemeniz yeter. Motif kutusunu iaretlediiniz taktirde, Access
2000, Office 2000 programlarnn ortak tema diyalog kutusunu
aacaktr.
Bu kutuda sol tarafta 24 (ekleme yaparsanz daha ok) tema adn
ieren bir liste greceksiniz. Sada ise setiiniz temaya gre veri
eriim sayfasnda uygulanacak biimi inceleyebilirsiniz. Burada
ubuklar adl temann seildiini gryoruz. Sonu tkladmzda ise
dier sihirbazlardan farkl olarak karmza bir Web sayfas tasarm
yapmaya elverili btn aralarn ve denetimlerin bulunduu tasarm
grnm gelecektir. Telaa gerek yok: Burada yapacanz tek ey,
sayfaya bir balk vermekten ibarettir. Balk yazmak iin buray
tklaynz yazsn tklayarak sayfanza kendi balnz yazabilirsiniz.
Bu grnmde yapabileceiniz bir baka deiiklik ise sayfann
veritaban ile canl ilikisini kuran Sihirbazn (Wizard) baz kontrollere
kendi adnn ksatlmasn yazmas dolaysyla bu ifadeleri
Trkeletirmek olabilir.
Burada grlen aralar ve denetimlerin kullanm byk lde HTML
bilgisi gerektirir. zellikle veritaban ile sayfanzdaki veri
grntlenecek kutular arasndaki ilikiyi salayan Recordset ActiveX
nesneleriyle ilgili ve Access 2000 tarafndan XML diliyle yazlan kodlarn
deitirilmesi Web sayfas ile ona hayat veren, verileri canl tutan
ilikiyi kesebilir. Burada yaptmz rnein Access 2000 iinde Web
sayfas olarak grn ile ayn sayfann Internette Web browser ile
ulald andaki grntsn gryorsunuz:
Bilgisayarnzdaki veri taban bu rnekte olduu gibi Web Servera bal
ise, kendi sabit diskitinizdeki Access dosyasnda yapacanz herhangi
bir deiiklik o srada sayfanz Internette izleyen ziyaretilerin
ekranna yanstlacaktr.
76
Access 2000 ile giri dzeyinde yaplabilecek ilerin bir ksmn grm
olduk. Daha dorusu, Accessin imkan ve yeteneklerinin yle bir
stn atk. Geride daha ok ey var. Formlar daha albenili
yapmaktan tutun, baka veritaban programlar ile bilgi alveriine,
hesap ve ilev yapan sorgulardan, SQL Server veritabanlarn ilemeye
kadar.. Ama her byk yolculuk bir ilk admla balar. Bu kitapkla,
Access 2000 dnyasna ilk adm atm oluyorsunuz.
77

You might also like