【发布时间】:2010-05-03 09:30:53
【问题描述】:
我有以下疑问:
select * from table where table.DateUpdated >='2010-05-03 08:31:13:000'
正在查询的表中的所有行都有以下 DateUpdated:
2010-05-03 08:04:50.000
它返回表中的所有行——即使它不应该返回任何行。
我很确定这是因为一些糟糕的日期/时间区域性问题。
如果我把日期换成
select * from table where table.DateUpdated >='2010-03-05 08:31:13:000'
然后它应该做的。
如何强制所有内容都使用相同的设置?这让我很头疼:)
如果重要的话,这是 NHIbernate 从我的 WCF 服务生成的 sql。
w://
【问题讨论】:
-
您能告诉我们您使用哪种技术让 NH 查询数据库
-
您使用的是 CreateQuery()、CreateCriteria()、CreateSqlQuery()、NHibernate.Linq 还是其他方法?
-
我想知道您是如何传递日期的。您是否尝试将 Thread.CurrentThread.CurrentCulture 设置为您所追求的文化。您的应用程序和 sql server 可以在具有不同默认文化的机器上吗?
-
@ondesertverge:SQL Server 内部设置独立于操作系统
标签: sql-server wcf nhibernate datetime