【发布时间】:2012-12-13 17:21:42
【问题描述】:
我有一个硬编码日期的查询,格式为
startdate >= '2012-11-03' AND enddate <= '2012-11-30 23:59'
我的数据库日期格式是“mdy”,但我确信它会接受 yyyy-mm-dd 作为其通用日期结构。
当我尝试在与特定数据库用户 (userX) 连接的目标数据库上的 SSMS 中运行此查询时,我收到有关日期格式的错误
消息 242,第 16 级,状态 3,第 1 行
将 varchar 数据类型转换为 datetime 数据类型导致值超出范围。
但是,当我运行作为 SA 用户连接的确切查询时,查询会执行..
这是为什么?我已授予 userX 完整的 dbo 权限(sysadmin 等),但仍然出现错误?
【问题讨论】:
-
不确定一个用户不工作的原因是什么。但是,ISO 日期格式 为
yyyymmdd,ISO8601 格式 为yyyy-mm-ddThh:mi:ss.mmm。尝试使用它们,看看是否仍然出现错误。
标签: sql-server sql-server-2008