c# - SQL Server 日期时间问题?

标签 c# sql-server-2005 t-sql

C#代码通过动态查询从数据库读取数据。

Select ID, TransDate from Table_01

业务逻辑正在处理数据并最终将日期再次放回数据库。

INSERT INTO Table_02
( ID,ClosingDate) VALUES
( 1,Convert(DateTime, '27/07/2011 12:00:00 AM',120))

由于我插入的日期格式是 dd/MM/yyyy。 Sql Server 不喜欢它并且 .net 抛出此错误:-

The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value

如果我将其更改为 MM/dd/yyyy 或 yyyyMMdd 那么它就可以工作。

但是系统区域日期时间设置可以由任何用户随时更改,所以我正在寻找一些具体的解决方案。

最好的处理方法是什么?

最佳答案

转换样式120是:yyyy-mm-dd hh:mi:ss(24h)。尝试改用 103 (dd/mm/yyyy)。

INSERT INTO Table_02
( ID,ClosingDate) VALUES
( 1,Convert(DateTime, '27/07/2011 12:00:00 AM',103))

您可以找到样式 here 的文档.

关于c# - SQL Server 日期时间问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6864234/

相关文章:

c# - 如何检测进入和离开飞机 "missile lock"锥体的物体?

c# - 查询 Active Directory 中 OU 中的所有用户并将用户名输出到列表框

sql-server-2005 - 模块化应用数据库结构

SQL:按日期顺序订购 Month_year

c# - 我正在尝试在单个脚本上获取这两个整数的总和,以便我可以将其作为 Unity 上的 UI 分数文本

c# - 以编程方式从自定义用户控件中的数据上下文访问数据

sql-server - varchar 索引是如何存储的?

sql-server - 如何测试 SQL Server 中用户是否存在?

sql-server - TSQL 数据透视聚合

sql - Union 的奇怪 Order By 行为