a.s.
Arkadaşlar konu biraz dağıldı sanırım.
ahmet_sinav arkadaş:
Kod: Tümünü seç
istisnai durumda foreignkey disable edilebilir daha sonra enable edilir. MSSQL dökümanlarında disable foreign key olarak bakabilirsiniz..
demiş
Sanırım ben istisna kelimesini yanlış kullandım. Faturasıs stok hareketlerinin sayısı faturalı stok hareketlerinden fazla bile olabilir.
Benim foreign key kullanmak istememin iki sebebi vardı:
1- İki tablo arasında bir ilişkinin var olduğunu veritabanı sisteminin bilmesini ve ona göre kendini hazırlamasını istiyordum.
2-Veri tabanının hatalı kayıtlara engel olmasını sağlamak.
SQLServer Veritabanının Foreign key özelliği bu iki şartıda tam olarak yerine getirebiliyor aslında. Ancak benim istediğim 2.maddedeki özelliği gerçekleştirirken benim belirlediğim bir şartı sağlayan kayıtlara göz yummasıydı. Ancak benim istediğim özellik programcılar için pek tercih edilen birşey değil herhalde. Onun için farklı yöntemlerle sorunu çözmem gerekiyor.
Ali Erdoğan ve aslangeri arkadaşlar -1 id'li bir fatura tanımlamamı tavsiye etmişler.
Sanırım benim stok fiş başlık tablosu ile hesapkart tablosu arasında kurduğum ilişki yanlış anlaşılmış.
Ben fiş numarası ile değil hesap kodları "Varchar(16)" bir bağlantı kuruyorum. Fiş başlık tablosu hesapkartları tablosuna bağlanıyor.
Hesapkartları tablosunda "" kodlu bir hesapkartı açsam herhalde oda güzel bir çözüm olabilir.
İlginize teşekkür ederim.