Şimdi Ara

SQL ödevim küçük bir soru

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
14
Cevap
0
Favori
220
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar ödevim kuaför rezervasyonu hocamız eksiğim olarak "Rezervasyonda sadece bir işleme müsade edilmesi
    oysaki aynı rezervasyonda saç, sakal tıraşı olabilirim. İkisi ayrı hizmet ama tek bir seferde yaptırabilmeliyim" dedi.Bunun için ne tür bir ilişki veya tablo eklemem gerekli yardımcı olursanız sevinirim.

    SQL ödevim küçük bir soru



    < Bu mesaj bu kişi tarafından değiştirildi RawShed -- 1 Haziran 2020; 17:29:32 >



  • Sorunu düzgün sorduğun için teşekkürler.

    Verilen Hizmetler tablon olacak,

    id,
    adı,
    liste_fiyatı

    gibi.

    Şimdi benim bu tasarımdan anladığım bu şey birden fazla kuaföre hizmet veriyor.

    O yüzden hangi kuaför hangi hizmetleri veriyor diye de bir tablon olması lazım. Tabi her hizmet her kuaförde aynı fiyatta olmayabilir.

    verilen_hizmetler_baglanti
    id,
    kuför_id
    hizmet_id
    fiyatı

    rezervasyon hizmetler tablosundan

    hizmet çıkacak.

    rezervasyon hizmetler detay diye bir tablon olacak.

    id
    rezevasyon_hizmetler_id
    hizmet_id

    böylece bir rezervasyonda birden fazla hizmet rezervasyonu alabilirsin. Ayrıca rezervasyon alırken, sadece o kuaförün hizmetlerini bilirsin ve fiyatı da otomatik gelir.



    < Bu mesaj bu kişi tarafından değiştirildi Delifisek.Tux -- 1 Haziran 2020; 17:41:10 >
  • Delifisek.Tux kullanıcısına yanıt
    Çok teşekkür ederim hocam. Verilen hizmetler tablosu yerine bende mesela HizmetUcret tablosu var hizmetin ismi ve ücreti yer alıyor, sizin dediğiniz tablo yerine bu kalsa sıkıntı olmaz galiba?

    < Bu ileti DH mobil uygulamasından atıldı >
  • Düşünceme göre o çok doğru bir tablo değil.Öncelikle neden var, hizmet ve ücret kısımları zaten ana tabloda var, onun olması neye yarıyor. Eğer onu kullanacaksan ozaman diğer tablodaki hizmet ve ücret kısmını kaldırman lazım.

    burada espiri, müşteri kendi randevusunu kendi alıyorsa, karşısına fiyat koymalısın. Her kuaför aynı fiyatı verecek diye bir şart yok.

    benim verdiğim fiyat tablosundan fiyatı okutursun. Giriş alanına ön seçili değer olarak koyarsın.

    Eğer müşteri kendi kayıdını yapıyorsa (web vs) fiyatı direkt girilir.

    Ama mesela adem kuaför 20 yıllık müşterisi osman abisine giriş yapıyorsa mesela fiyat üzerinden indirim yapabilir. gibi.
  • Delifisek.Tux kullanıcısına yanıt
    Anladım hocam, peki mesela hizmetin süresini ekleyecek olsam verilen_hizmetler tablosuna eklemem gerekli değil mi?

    < Bu ileti DH mobil uygulamasından atıldı >
  • Standart ise evet, kuaföre göre değişiyorsa başka.
  • Delifisek.Tux kullanıcısına yanıt
    Hocam mesela sizin söylediğiniz şekilde değişiklik yapmadan kendi tablomda şöyle deneyince 1 müşteri birden fazla hizmet alabiliyor çıkıyor. Kafam karıştı, şimdi sizin dediklerinizden.
    SELECT * FROM Tbl_Rezervasyonlar as r
    INNER JOIN Tbl_RezervasyonHizmetler as rh ON r.RezervasyonId = rh.RezervasyonId
    INNER JOIN Tbl_HizmetUcretleri as hu ON rh.HizmetUcretId = hu.HizmetUcretId
    WHERE r.RezervasyonId = 5;
  • Teorik olarak evet,

    Ama sen her rezervasyon için, rezervasyon hizmeti oluşturmak zorundasın, bir lookup tablon yok. yani berberler odasının listesini bir yere kayıt etdersen bu senin hizmetlerin olur.

    burada türeteceksin.

    Sql ile yapıabiliyorsun diye, doğru yaptığın anlamına gelmiyor.

    Ama benim oğlanın 7 yaşında, berbat bir yazsısı var, oğlum olmamış deyince, Ama Öğretmenim yıldız veriyor deyip geçiştiriyor.

    Sen bilirsin.
  • Delifisek.Tux kullanıcısına yanıt
    Anladım hocam, aklımdaki soru işaretini kaldırdınız resmen. Teşekkür ederim.
  • Delifisek.Tux kullanıcısına yanıt
    Hocam kusura bakmayın çok soru sordum fakat verilen_hizmetler_baglanti tablosundaki hizmet_id verilen_hizmet tablosundan gelecek değil mi hocam? Yoksa rezervasyon_hizmetler tablosundaki HizmetId mi hocam?



    < Bu mesaj bu kişi tarafından değiştirildi RawShed -- 2 Haziran 2020; 20:14:34 >
    < Bu ileti DH mobil uygulamasından atıldı >
  • SQL ödevim küçük bir soru

    Aşşa yukarı böyle bir şey...

    Personel vs detayı sende.

    bir rezevasyonda bir den fazla hizmet için rezervasyon_id kullanarak one-2-many yapman lazım. ki istediğin kadar hizmet verebilesin.

    Biz bunun içine verilen hizmetler tablosu ile ince bir ayar çekip. Kuraförlerin her biri için hizmet ve fiyat tanımlama imkanı getirdik.

    Sen bu kayıtları girerken hizmetler listesinden faydalanacaksın. oradaki fiyatı okutup verilen hizmetler tablosuna veri girerken ön tanım olarak yerleştireceksin. ama a kuaför 5 tl diyece b kuaför de 20 tl.

    hizmetler, personel, kuaförler lookup taboları yanı sen rezervasyon için veri girerken bunlara sorgu yapıp select box içinde göstereceksin. aynı şekil müşterilerede uygulanabilir, böylece devamlı müşteri için tekrar tekrar veri girmene gerek kalmaz.

    iptal_tarihi default 0, 0 değilse iptal edilmiş demektir.

    keza bitiş tarihi de öyle...

    buralara tarih koyma, unsigned int yap ki. içine unix timestamp koy sonra tarih işlerin çok kolaylaşır.




  • Delifisek.Tux kullanıcısına yanıt
    Hocam size ne kadar teşekkür etsem az. Yardımlarınız için teşekkür ederim. Hocam aklıma takılan herhangi bir soru olursa yine buradan yazsam sorun olur mu?



    < Bu mesaj bu kişi tarafından değiştirildi RawShed -- 2 Haziran 2020; 21:46:15 >
  • Söz veremem, elimizden geleni yaparız. Burada mesele sana bir şeyler öğretmekte.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.