在线求助 字符串型如何转换为日期 cast( as datetime) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 刚才试验了一下,楼主那个字符格式,直接转就可以了哦:create table #test (a varchar(100))insert into #test values ('Aug 9 2005 08:12:13:000AM')select a,convert(datetime,a) from #test结果:Aug 9 2005 08:12:13:000AM 2005-08-09 08:12:13.000 楼上的可以得到结果吗,我执行了怎么报下面的错误?(所影响的行数为 1 行)服务器: 消息 241,级别 16,状态 1,行 7从字符串转换为 datetime 时发生语法错误。 SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM') -----------------------2005-08-09 08:12:13.000(1 row(s) affected)-----------------------2005-08-09 08:12:13.000(1 row(s) affected) 我的怎么一直报错,执行SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM') 也报错 你看看你输入的字符串是不是有一些诸如2008-5-32呀、2008-2-30呀、2008-4-17 08:93:00.000AM之类的超出日期范围的字符?不然直接convert就可以了呀。 是不是你原来那个varchar的字段不够长,有一些字符被截掉了呀? SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)服务器: 消息 241,级别 16,状态 1,行 1从字符串转换为 datetime 时发生语法错误。---------------------------------------------我也是SQL Server2000+SP4,怎么报错啊?? set language N'English'--设置语言为英文declare @t varchar(100)set @t='Aug 9 2005 12:00:00:000AM'select cast(@t as datetime)/*Changed language setting to us_english. ------------------------------------------------------ 2005-08-09 00:00:00.000(所影响的行数为 1 行)*/ 设置为中文:set language N'简体中文' set language N'English'SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM') 这个是可以的。如果不设置英文就不行。 求助。。 sql语句问题 求数据库用法 MSSQL中,如何调用存储过程的结果集合? 行列转换 SQL Server或Oracle中数据库与数据库对象之间的关系 sql server2005数据库同步问题~ 关于SQL2000的问题,急死了,帮帮忙! 问一个SQL语句 给大家散分,顺带帮我解决一个游标中截取字符串的问题。 请 众高手 指点! 在线求助_科学记数法类型的字符型如何转换成数值型的 復雜查詢語句
create table #test (
a varchar(100)
)insert into #test values ('Aug 9 2005 08:12:13:000AM')select a,convert(datetime,a) from #test结果:
Aug 9 2005 08:12:13:000AM 2005-08-09 08:12:13.000
(所影响的行数为 1 行)服务器: 消息 241,级别 16,状态 1,行 7
从字符串转换为 datetime 时发生语法错误。
SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)
SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM') -----------------------
2005-08-09 08:12:13.000(1 row(s) affected)
-----------------------
2005-08-09 08:12:13.000(1 row(s) affected)
SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)
SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM')
也报错
从字符串转换为 datetime 时发生语法错误。
---------------------------------------------
我也是SQL Server2000+SP4,怎么报错啊??
set @t='Aug 9 2005 12:00:00:000AM'select cast(@t as datetime)
/*
Changed language setting to us_english.
------------------------------------------------------
2005-08-09 00:00:00.000(所影响的行数为 1 行)
*/
set language N'简体中文'
SELECT CAST('Aug 9 2005 08:12:13:000AM' AS DATETIME)
SELECT CONVERT(DATETIME,'Aug 9 2005 08:12:13:000AM')
这个是可以的。如果不设置英文就不行。