数据库内时间问题

Chatopera 研发团队
企业官方账号
2009-05-26 07:51:58
环境:SQL Server 2000 Powerbulid9.0
问题描述:建立小型图书管理系统,需要对借出的图书做管理,有归还日期。
怎样取得还书当天的日期,在还书的当天要和设定好的归还日期做比?怎样设置这两个时间的字段?srting(char)
还是Datetime?
还望高手指教!!
...全文
107 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
htl258_Tony 2009-05-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ks_reny 的回复:]
SQL code
getdate() 当前时间
datediff(dd,还书日期,getdate())>0 表示已经超过还书时间了。
[/Quote]正确
htl258_Tony 2009-05-26
  • 打赏
  • 举报
回复
怎样取得还书当天的日期 getdate() 函数
ks_reny 2009-05-26
  • 打赏
  • 举报
回复

getdate() 当前时间
datediff(dd,还书日期,getdate())>0 表示已经超过还书时间了。
--小F-- 2009-05-26
  • 打赏
  • 举报
回复
DATEDIFF
返回跨两个指定日期的日期和时间边界数。

语法
DATEDIFF ( datepart , startdate , enddate )

参数
datepart

是规定了应在日期的哪一部分计算差额的参数
startdate

是计算的开始日期。startdate 是返回 datetime 或 smalldatetime 值或日期格式字符串的表达式。

因为 smalldatetime 只精确到分钟,所以当用 smalldatetime 值时,秒和毫秒总是 0。

如果您只指定年份的最后两位数字,则小于或等于"两位数年份截止期"配置选项的值的最后两位数字的数字所在世纪与截止年所在世纪相同。大于该选项的值的最后两位数字的数字所在世纪为截止年所在世纪的前一个世纪。例如,如果 two digit year cutoff 为 2049(默认),则 49 被解释为 2049,2050 被解释为 1950。为避免模糊,请使用四位数的年份。

有关时间值指定的更多信息,请参见时间格式。有关日期指定的更多信息,请参见 datetime 和 smalldatetime。

enddate

是计算的终止日期。enddate 是返回 datetime 或 smalldatetime 值或日期格式字符串的表达式。


--小F-- 2009-05-26
  • 打赏
  • 举报
回复
Datetime

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧