Mik*_*ike 11 .net sql sql-server
我正在构建一个应该存储在数据库中的每日报价的应用程序.每个报价分配一年中的一天,包括2月29日的一天.由于引用只关心那一天不是一年,我还应该使用smalldatetime类型吗?请让我知道你的意见,谢谢!!
Jam*_*mes 17
我最近遇到了这个问题,我的初始设计确实存储了日期,而我却忽略了这一年.然而,它只是感觉不对.我决定只删除它并改为使用单独的Day
/ Month
列.它感觉更清洁,更具可读性.
更新
自从我写完这个答案以来,很长一段时间,事后我举起手来说这些评论被天真地忽略了.通过将日/月存储为单独的字段,存在存储无效数据的可能性,而如果将它们存储为完整数据DateTime
,则实际上可以免费获得该验证.
根据您的验证策略,这可能不是一个问题,但是,如果您依赖数据库验证,那么我建议您将其存储为DATE
并简单地提取相关信息或使用触发器在插入之前运行一些验证.
另一种选择(我认为其他人没有提供)将把月份和日期存储为单独的整数.因此,要查找今天的条目,您可以:
select quote from quoteTable where month = 4 and day = 20;
Run Code Online (Sandbox Code Playgroud)
这将允许您在不使用日期(并忽略年份)的情况下获取特定日期的消息.
只是一个想法.
归档时间: |
|
查看次数: |
5762 次 |
最近记录: |