Bir tablo oluşturmam gerekiyor, mantık ?

SLiM_BoY

0
İyinet Üyesi
Katılım
4 Ağustos 2005
Mesajlar
2,325
Reaction score
0
Şimdi olay şu şekilde..

Evinizi temizleteceksiniz. Hizmetçiler var, istediğiniz hizmetçiyi tutabiliyorsunuz. Ayşe, Fatma, Hayriye olsun isimleri.. Ayşe sadece hafta içi, Fatma sadece hafta sonu, Hayriye ise sadece tatillerde (bayram tatili, resmi tatiller vs) çalışıyor. Ve bu 3 hizmetçinin belirli bir çalışma saatleri var.. Atıyorum Ayşe 09:00 - 12:00 arası, Fatma 11:00 - 15:00 arası, Hayriye 16:00 - 20:00 arasında çalışıyor.

Tabloda olması gerekenler : Hizmetçiler, temizlik yapılacak gün çalışıyor mu çalışmıyor mu, çalıştığı saatler..

Kod:
ID - Hizmetçi - Çalıştığı Gün - Saat
1 - Ayşe - Hafta içi - 09:00-12:00

ID - Hizmetçi - Hafta içi - Hafta sonu - Tatil - Saat
1 - Ayşe - 1 - 0 - 0 - 09:00-12:00

Aslında birkaç şey daha vardı, not almadığım için hatırlayamadım şimdi.. Kolonlardan 2 tanesi aynı oluyordu, veri tekrarlanmasın diye bunu matris ile çözüp tekrar tablo oluşturuyorduk.. gibi bir şeylerdi sanırım :)

Tablo yapısı önerebilecek var mı arkadaşlar ?
 

Ozcan

0
İyinet Üyesi
Katılım
12 Mayıs 2007
Mesajlar
3,749
Reaction score
59
Konum
Antalya
id-hizmetci-saat-gun
1-ayşe - 12:00 -hi
2-fatma -20:00 -hs
3- ali - 14:00 -ta


id-tatil
1-19.05.2010
2-30.08.2010

saat ve günler için veri tabanı açmana gerek yok değişkene atasan bile yeter çükü hep sabit kalıcaklar :) yani bir hafta asla 8 gün olmuyacak saatte hiç bir zaman 25:00 olmayaacak. Eğer günler karışık olursada o zaman 1,3,5 diye veri girersin sonra fonskiyonda 1 pazartesi 2 salı 3 çarşamba diye kontrol edersin.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Saat_ID (serial)
Hizmetci_ID (int) -> Hizmetciler tablosuna JOIN
Saat_Basla (int)
Saat_Bitir (int)
Hafta_Sonu (bool)
Tatil_Gunleri (bool)

Saati iki ayri kolona koyarsan, belirli saat aralıklarında kimin çalışıp çalışmadığını sorgulayabilirsin, tek kolonda 9-12 yaparsan olmaz.

Hizmetci tablosuna join ederek, her bir hizmetci icin degisik saatler tanımlarsın bu şekilde.
Örnek
107 (Ayşe) - 12.00 - 15.00 - FALSE - FALSE
Ayşe hafta içleri ve tatil olmayan günlerde 12 - 15 arası çalışıyor

107 (Ayşe) - 9.00 - 11.00 - TRUE - FALSE
Ayşe hafta sonları 9 - 11 arası çalışıyor

108 (Fatma) - 13.00 - 20.00 - TRUE - FALSE
Fatma haftasonları 13 - 20 arası çalışıyor

Bu sistemle Ayşe için hafta sonları iki ayrı aralık ta verebilirsin, iki satır girersin 9-12 veya 4-6 diye, kadın 12-4 arası cocugunu okuldan alıyormuş mesela?
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Elektronik Sigara
Üst