当前位置: 代码迷 >> Sql Server >> 在英国的MS-SQL数据库生成的日期格式原来的:'27/05/2013 10:05:51'要改成什么内容,才能在各种日期不同的数据库中正确插入呢
  详细解决方案

在英国的MS-SQL数据库生成的日期格式原来的:'27/05/2013 10:05:51'要改成什么内容,才能在各种日期不同的数据库中正确插入呢

热度:415   发布时间:2016-04-24 21:04:09.0
在英国的MS-SQL数据库生成的日期格式原来的:'27/05/2013 10:05:51'要改为什么内容,才能在各种日期不同的数据库中正确插入呢?
我自己写了一个生成SQL插入语句的代码,生成了脚本,但在是在处理不同日期格式的数据库的时候有问题
如以下插入语句是我在英国服务器的SQL生成的日期格式为“dd/MM/dddd HH:mm:ss”

INSERT INTO Pub_User ([Guid], [Version], [CreateTime]) VALUES (N'794bd01a20b042ca9c02caa24761cd75', 46, '27/05/2013 10:05:51')

我这里的'27/05/2013 10:05:51'是直接从表格中用C# ToString出来的
但是他插入我的中文日期数据格式为 "yyyy-MM-dd HH:mm:ss"的格式的时候上面的插入语句报错:

从 char 数据类型到 datetime 数据类型的转换导致 datetime 值越界。

那正确的的生成的日期插入脚本为什么呢?
也就是说:在英国的数据库生成的日期格式原来的:'27/05/2013 10:05:51'
要改为什么内容,才能在各种日期不同的数据库中正确插入呢?

万分感谢

------解决方案--------------------
改用变量:
declare @CreateTime datetime
set @CreateTime= '27/05/2013 10:05:51'
INSERT INTO Pub_User ([Guid], [Version], [CreateTime]) 
VALUES (N'794bd01a20b042ca9c02caa24761cd75', 46, @CreateTime)

你试试看.
------解决方案--------------------
select convert(datetime, '27/05/2013 10:05:51', 103)

.. VALUES (N'794bd01a20b042ca9c02caa24761cd75', 46, convert(datetime, '27/05/2013 10:05:51', 103))
  相关解决方案