Master - Detail

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
lom
Üye
Mesajlar: 135
Kayıt: 25 Nis 2006 02:37

Master - Detail

Mesaj gönderen lom »

s.a Kolay gelsin arkadaşlar. Mssql server 2000 kullanıyorum. 3 adet tablom var.

Kod: Tümünü seç

[u]KATEGORI[/u]
kategori_id   int   auoincrement (Primary key)
kategori adı

[u]ALTKATEGORI[/u]
altkategori_id  int   auoincrement (Primary key)
kategori_id
altkategoriadı

[u]DETAY[/u]
detay_id
kategori_id
altkategori_id
birimi
cinsi
tablolarım bu şekilde. forumda 2 gündür araştırıyorum ancak tam bir sonuca ulaşamadım. Genelde Firebird için anlatılmış , bilmiyorum belki farketmez ama ben beceremedim.
şimdi bu üç tabloyu şu şekilde kullanamam gerekiyor

GAZETE --
------------MILLIYET --------GÜNCEL
--------------------------------MANŞET
--------------------------------SON DAKİKA
umarım anlatabilmişimdir meseleyi. bu şekilde tablolara kayıt yapmam için master-detail oluşturmam gerekiyo heralde. bu master detail için Sql de tablolara bi ayar yapmam gerekiyormu , ayrıca delphide Adotablenesnesi için hangi ayarları yapmam gerekiyor. Yardımcı olursanız sevinirim. Kolay gelsin.
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Master - Detail

Mesaj gönderen conari »

DETAY
detay_id
kategori_id
altkategori_id
birimi
cinsi
detay tabloda da detay_id PK yap.
Kategori_id yi
Katagori tablosundaki ID ile FK ,
altkategori_id yi
ALTKATEGORI tablosundaki ID ile FK
yaparsan master detail oluşur.

bunu detail tablonun Key kısmına tıklayıp New Foreign Key ile yaparsınız.

Gerisi programcılığına kalmış.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
lom
Üye
Mesajlar: 135
Kayıt: 25 Nis 2006 02:37

Re: Master - Detail

Mesaj gönderen lom »

detay tabloda da detay_id PK yap.
Kategori_id yi
Katagori tablosundaki ID ile FK ,
altkategori_id yi
ALTKATEGORI tablosundaki ID ile FK
yaparsan master detail oluşur.
Hocam bu dediğinizi tam olarak anlayamadım. FK nasıl yapılırki , baktım sqlde yok öle bişee ? ayrıca kategori tablosundaki ID ile FK demişsiniz , kategori_id ile mi FK yapılacak. biraz daha açık yazarsanız sevinirim hocam :oops:
Kullanıcı avatarı
lom
Üye
Mesajlar: 135
Kayıt: 25 Nis 2006 02:37

Re: Master - Detail

Mesaj gönderen lom »

Hocam biraz kurcaladım da ; SqlServer da Relationships menüsü altında FK bölümü çıktı. Ancak bu kısmı hangi tabloda yapacam anlayamadım ?? Detay tablomda detay_id alanını PK olarak ayarladım. sölediğiniz olayı DETAY tablosunda ayarladım. DETAY tablosundaki kategori_id yi KATEGORI tablosundaki kategori_id ' ye FK yaptığımda şöle bir hata alıyorum :

Kod: Tümünü seç

The colums in  table  do not match an existing primary key or UNIQUE constraint 
Acaba neyi yanlış yapıyorum. Kusura bakmayın yeni öğrenmeye çalışıyorum :(
Cevapla