如果是學校使用, 我會考慮用另一種方式.
1. 將所有的可借用教室編碼
2. 將可以借用的時段, 以半小時或一小時為單位, 進行編碼.
3. 將以上兩者交叉, 產生資料表
教室代碼 日期 時段 借用人
當使用者選擇時, 只能選指定時段的起訖, 然後程式把這時段轉換成 1 或 0 , 而填寫到資料表內
程式端輸入:
借用人: 吉他社
日期: 5/26
起始時間: 18:00
結束時間: 19:59 (19:30~19:59)
轉換成:
教室代碼 日期 時段 借用人
F001 5/26 1800 吉他社
F001 5/26 1830 吉他社
F001 5/26 1900 吉他社
F001 5/26 1930 吉他社
後續要新增時, 直接判斷資料表內是否已登記, 再回應登記時間.
純屬個人想法, 優缺點則還沒細想 ^^!
特點:
1. 不只可以判斷是否重複, 還可以建議同時段的空教室或同教室的不同時段.
2. 如果有多人同時使用時, 可以先標記"預約", 再"確認"或"取消預約"等過程.
3. 登記的資料量大時, 不需要將全部登記資料全部檢查一次, 只要轉換一次, 檢查資料表即可, 將來資料量大較不會拖慢速度.