SQL-将非标准字符串转换为DateTime

SQL-将非标准字符串转换为DateTime,sql,sql-server,Sql,Sql Server,我有一些字符串中的日期/时间数据,格式为“26/10/2009 09:06:43”(即日期为英国格式)。当我尝试 SELECT CAST('26/10/2009 09:06:43' AS DATETIME) 我得到以下错误: 将char数据类型转换为datetime数据类型会导致 超出范围的日期时间值 我相信这个解决方案非常非常简单,但我在网上找到的每个例子似乎都过于复杂了 如果你能给我任何帮助,我将不胜感激 尝试使用convert功能,而不是提供样式编号: SELECT convert(DA

我有一些字符串中的日期/时间数据,格式为“26/10/2009 09:06:43”(即日期为英国格式)。当我尝试

SELECT CAST('26/10/2009 09:06:43' AS DATETIME)
我得到以下错误:

将char数据类型转换为datetime数据类型会导致 超出范围的日期时间值

我相信这个解决方案非常非常简单,但我在网上找到的每个例子似乎都过于复杂了


如果你能给我任何帮助,我将不胜感激

尝试使用
convert
功能,而不是提供样式编号:

SELECT convert(DATETIME, '26/10/2009 09:06:43', 103)

您可以在此处找到所有格式:

尝试使用
convert
功能,而不是提供样式编号:

SELECT convert(DATETIME, '26/10/2009 09:06:43', 103)

您可以在此处找到所有格式:

在oracle中,它是这样的:

SELECT to_date('26/10/2009 09:06:43', 'DD/MM/YYYY HH24:MI:SS') from dual;
有以下网址:

在sql server中似乎是这样的:

SELECT CONVERT(DATETIME, '26/10/2009 09:06:43');

在oracle中是这样的:

SELECT to_date('26/10/2009 09:06:43', 'DD/MM/YYYY HH24:MI:SS') from dual;
有以下网址:

在sql server中似乎是这样的:

SELECT CONVERT(DATETIME, '26/10/2009 09:06:43');

转换前,将语言设置为英式英语:

set language [British English]
SELECT CAST('26/10/2009 09:06:43' AS DATETIME)
也可以使用convert函数,并声明样式:

SELECT convert(DATETIME, '26/10/2009 09:06:43', 103)

转换前,将语言设置为英式英语:

set language [British English]
SELECT CAST('26/10/2009 09:06:43' AS DATETIME)
也可以使用convert函数,并声明样式:

SELECT convert(DATETIME, '26/10/2009 09:06:43', 103)

这里似乎根本没有
格式
函数(它是
转换
),第三个参数叫做
样式
(不是
格式
)@Damien\u不信者,我的意思是转换:)也许,最好在msdn上提供链接?这里似乎根本没有
格式
函数(它是
转换
),第三个参数叫做
样式
(不是
格式
)@Damien\u不信者,我的意思是转换:)也许,最好在msdn上提供链接?