[]

ilişkisel tablolalarda kayıt işlemi

selamlar,

şimdi diyelim ki benim 2 tablom var. bunlardan birisi rezervasyonlar(id, tarih, musteri_id) öbürüde müşteriler(id,isim,soyisim) tablosu. iki tablodadaki id'ler primary key ve rezervasyonlar tablomda ki musteri_id kismida foreign key. simdi müşteri gelip bir form dolduruyor, forma isim soyisim ve tarih yaziyor. burada nasıl bir kayıt yapmalıyım ki müşteri id si ile rezervasyon id si ayni olsun.
benim düşüncem müşteri formu doldurup yollaya bastığında iki tabloya da 2 ayrı insert into komutuyla verileri işleyecek. id lerimde auto incremental olacak. ama mantıksızlık şurada oluşuyor ki foreign key olan müsteri id ye gerek kalmıyor rezervasyonlar tabelasındaki id ile müsteri tabelasındaki id senkronize olarak artıyor. yani daha mantıklı bir yöntem var mı bilemedim...

 
bu doldurduğu form ne formu üyelik formu mu? üye olunca neden rezervasyon tablosuna kayıt ekliyorsun?


  • ocanal  (21.04.12 19:00:53) 
hayır bu doldurduğu form rezervasyon kayıt formu. aslında tablolarımda daha fazla attribute var ama onları yazmadım karışıklık olmasın diye. sadece bunun mantığını anlasam yeter yani:) şöyle ki, rezervasyon yapan kişiye bir de rez numarası yollanicak ve o kişi rezervasyon numarasını girip rezervasyonunu görüntüleyebilecek. bu durumda tabloları inner joinle birleştirmem gerekecek ve burda iki tablodaki müsteri id kısımlarının aynı olması gerekiyor. o yüzden lazım:))


  • project zero  (21.04.12 19:10:22) 
şimdi olay şöyle,

müşteriler tablosu ne için var, bir kere o önemli? yani sisteme üye olunabiliyor mu? müşteri gelip sisteme giriş yapabiliyor mu?

eğer üye kayıt/giriş sistemi varsa zaten her kullanıcının bir müşteriid'si var demektir. yeni rezervasyon insert ederken rezervasyon.müsteri_id olarak kullanıcının müşteri_id değerini vereceksin.

ama eğer sistem "her rezervasyonda yeni bir müşteri ekliyorum" şeklindeyse o zaman müşteriler tablosu doğrudan gereksiz oluyor, ama eğer öyle olacaksa, olmalıysa, bu sefer yapacağın işlemi şöyle yaparsın,

formu doldurup gönderdiği zaman önce müşteriler tablosuna bir kayıt eklersin, daha sonra bu eklediğin kaydın, müşteri_id'sini alırsın.

daha sonra bu aldığın müşteri_id'si ile yeni rezervasyon eklersin.
  • ocanal  (21.04.12 19:23:18) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler basond, compumaster, fraise, kibritsuyu, rakicandir
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.