将日期和时间保存到数据库

时间:2014-02-03 23:23:32

标签: c# winforms c#-4.0

我正在开发小型Windows窗体.net项目,我们需要构建预约调度程序。下面是UI应该是什么样子的屏幕模拟。

enter image description here

用户应该能够选择AM,PM或OWH而不管小时数。或者,他可以从下拉菜单中选择特定的小时数。

对于为此设计数据库的最佳方法,我有一个问题。最初我只是想使用日期和时间,但这不会起作用 存储AM / PM或OWH插槽很困难(没有小时部分)。

我正在考虑在下面做,我们将非常感谢任何建议和最佳做法: 1.创建插槽表,基本上包含:

SlotID  | Description
1       | AM
2       | PM
3       | OWH
4       | 00
5       | 02
....
  1. 创建Appoinment表,其中包含以下内容:

    AppointmentDate | SlotID | ......

    04-02-2014 | 1 | ......

    04-03-2014 | 5 | ......

  2. 任何其他建议将不胜感激。

2 个答案:

答案 0 :(得分:1)

建议存储正在存储的时间类型。

TimeType添加额外的表格:

TimeTypeId | TimeTypeDescription
1          | AM
2          | PM
3          | OWH
4          | Time

然后将Appointment表更改为:

AppointmentDate | TimeTypeId | TimeOfDay (nullable)
2014-02-04      | 1          | (null)
2014-02-05      | 4          | 7 
2014-02-06      | 4          | 19 

如果约会具有正确的TimeType

,您只关心TimeOfDay

答案 1 :(得分:0)

我的建议是,如果你想以你设计的方式使用它(无论出于何种原因),我会把它保存为starttime和endtime,例如可以是AM = starttime 6和endtime 18,如果是用户选择15(例如)你可以将它保存为starttime 15 endtime 16.我想你可以保持时间范围,从小时到小时,或更大的范围,如AM,PM。

希望对你有所帮助。