Konu Araçları | Seçenekler: | Gösterim Stili
Tarih
17/01/2011 17:31
Konu Sahibi
Hayri16
Yorumlar
18
Okunma
11453
Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 5/5 - 1 oy

Hayri16

Aktif Üye
Kullanici Avatari
Aktif Üye
1.010
12/11/2009
294
Bursa
Ofis 2007
08/09/2017,22:49
Access'in temeli bildiğiniz gibi tablolardır. Bütün işlemler Tablolar ve Alanları üzerinde yapılmaktadır.
Bu nedenle tabloların programın başından iyi tasarlanması işlerimizi kolaylaştıracağı gibi
programdan alacağımız verimi de arttıracaktır. Yeni başlayan arkadaşlarımız için bu olayı resimlerle
örnekleyerek anlatmaya çalışacağım.

Bir firmamız var. Bu firmada çeşitli görevlerde olan personel var. Bu personel zaman zaman belirli eğitim
seminerlerine , kurslara gidip geliyor. Personelle ilgili bu kurs kayıtlarını tutacak bir veritabanının
tablo yapısını tasarlamamız istendi.

Önce bizden istenen ne varsa onları yazalım:
Adı - Soyadı- TCNo - babaadı- Doğum tarihi- İli - Yabancıdili - Görevi- Kurs adı- Başladığı tarih -
Bittiği tarih. Tüm bu bilgilerle elimizde şu yapıda bir tablo olur.

resim

Bu tablodaki verilerimizde şimdilik bir sorun yok gibi görünüyor. Ama personel Bir başka kursa gitmek
istediğinde , bu tablo yapımıza göre şöyle bir kayıt eklememiz gerekecek:

resim

Bir çok bilgiyi tekrar girmek zorunda kaldık. Düşünün bu şekilde yüzlerce kayıt ekleyeceğimizi... O halde
bizim bu şekilde ki bir tablo yapımız pek işlevsel değil. O zaman ne yapalım?
Tablomuzun "hareketli parçalarını" yani değişebilir verileri ana tablomuzdan ayıralım.
Bu durumda elimizde şöyle bir tablo kalır.

resim

Şimdi bu tabloya baktığımızda bazı alanların sıkça tekrarlandığını görüyoruz. Nedir bu alanlar. İli ve
yabancı dil alanları. Nasıl daha kolay yaparız? Bu alanları ayrı tablo yapıp, verileri oradan bu
tabloya ilşkilendirerek. Önce bu iki alanı ayrı tablo yapalım:

resim

resim

Sonra ana tablomuzdaki ili ve yabancıdili alanlarının veri tipini sayı haline getirip adlarını da ilno ve
dilno yapıyoruz. Buralara il ve dil tablosundan ilgili kaydın id numarasını aktaracağız.
Sonuçta tablomuz şu hale geliyor:

resim

Buradaki işlemimizi tamamlamış gibiyiz. Şimdi gelelim hareketli olan bölümümüze.

resim

Durum bu şekilde idi.
Bunu da bir tablo haline getiriyoruz. Buna bir de kisino diye sayısal alan ekliyoruz. Neden? Bu
bilgilerin hangi personele ait olduğunu bilmek için. kisino alanına , bu bilgiler hangi personele aitse onun
id sini yazacağız. Şimdi durum aşağıdaki gibi oldu:

resim

Görüldüğü gibi burada da tekrarlanan alanlar var. Bunlar görev ve kurs alanları. Daha önce yaptığımız
gibi bu alanları da tablo haline getirip , bu tabloyla ilişkilendirelim.

resim

resim

Yine bu bağlantı kuracağımız alanları sayısal alan haline getirip , tablolardan ilgili kayıtların id
lerini aktaralım.

resim

Tablomuzun yapısı bu şekilde oldu. En başa gelip o 2 personeli eklemek istediğimizde
yapacağımız iş sadece aşağıdaki gibi olacaktır.

resim

Ne kadar kolaylık değil mi?
Bundan sonra istediğimiz işlemleri, sorguları bu şekilde daha güvenli, daha verimli ve daha kısa zamanda
yapmamız mümkün.
Tablolarımızın ilişki durumu da şöyle:

resim

Son olarak:
1- Tablolarımızda değişebilen alanlarını ayrı tablo.
2- Tekrarlanan alanlarını ayrı tablo yapmalıyız.
3- Tablo ve Alan isimlerinde mümkün olduğu kadar (maalesef) Türkçe karakter ve boşluk kullanmamalıyız.
4- Otomatik sayı alanı mutlaka tablolarımızda olmalı.

Umarım yararlı olmuştur.
İyi çalışmalar.


Hayri16, 12-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

alpeki99

Düşünmek en zor iştir...
Kullanici Avatari
Uzman
O....
6.090
29/10/2008
Bursa
Yazılım Geliştirici
Ofis 2010 32 Bit
31/08/2017,19:08
Teşekkürler sayın Hayri16. Özellikle en son satırdaki bahsettiğiniz Otomatik Sayı'nın önemine dikkat etmek lazım.


AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla

Coskun0559

Uzman
Kullanici Avatari
Uzman
C.... Ç....
1.221
02/11/2008
505
Tekirdağ
-
22/09/2017,17:32
teşekkürler hayri hocam


GERİ SAYIM;Sen doğduğunda başladı ! Eğer (9) canlı bile olsaydın en fazla (8) kez kaçabilirdin Ölümden ! Bil ki (7) Düvele sultan dahi olsan yerin (6) Mekan olacak sana. En fazla (5) Metre kumaş götürebileceksin ! Kapatacaksın (4) açsanda gözlerini ! Bu (3) günlük fani dünyada Azraile (2) kat olup yalvarsanda nafile EceL geldiğinde (1) gün öleceksin ! İşte, o an herşey (0) dan başlayacak. Çünkü,
ÖLÜM BİR YOK OLUŞ DEĞİL,YENİDEN DOĞUŞTUR !
Cevapla

okileturc

Aktif Üye
Kullanici Avatari
Aktif Üye
O.... V....
966
18/03/2009
459
İzmir
Ofis 2003
23/05/2016,13:38
Tşk elinize sağlık


okileturc, 18-03-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla

assenucler

Aktif Üye
Kullanici Avatari
Aktif Üye
A.... S.... Ş....
2.054
31/10/2008
63
İstanbul
-
01/09/2017,15:34
Sayın Hayri16;

İyi akşamlar..

Bir çok arkadaşımıza yararlı olacak bu bilgilendirmeniz için teşekkürler.

Her şey gönlünüzce olsun..

Sevgi ve saygılar...


Cevapla

benremix

Uzman
Kullanici Avatari
Uzman
R.... S....
4.433
17/05/2009
365
Ankara
Ofis 2010
23/09/2017,05:31
Sn Hayri hocam çok yararlı bilgiler sizin anlatımınızla daha bir anlaşılır olmuş. Ellerine sağlık.
alkisalkisalkis

Saygılar...

+rep


Bilgi paylaşıldıkça çoğalır....
Her engel, yaşam koşullarınızı daha iyileştirecek bir fırsattır.


Access için her zaman lazım olacak konu başlıkları listesi


Cevapla


Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  İlişkisel Veritabanı Tasarımı mesudi 13 19.495 20/09/2014, 16:50 ozi1977
  Tablo Verileri 4 Tablolar Arasinda İlişki Tanımlama accessdelisi 0 1.752 14/05/2014, 18:55 accessdelisi
  İlişkisel Veritabanı Tasarımı (e-Book) mesudi 4 5.123 25/04/2013, 15:13 PENTAGRAM1334
  sorgu üzerinde ilişkilendirme firdevs 3 2.492 26/06/2011, 15:55 rüzgar54
Lightbulb Uygulama tasarımı 2 ( Raporlar ) okileturc 11 5.315 25/06/2011, 13:59 boolean_

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
Forum use Krzysztof "Supryk" Supryczynski addons.