varchar转datetime

mnm35 2004-08-16 10:02:53
格式如
2004-apr-07
转成datetime类型
同时判断字符串是不是正确的时间


...全文
251 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 元老 2004-08-16
  • 打赏
  • 举报
回复
--默认的简体中文是没有这种日期格式的

--设置日期语言,支持楼主这种格式才行
set language 'Arabic'

declare @s varchar(100)
set @s='2004-apr-07'

if isdate(@s)=1
select 转换成日期的结果=cast(@s as datetime)
else
select '不是合法的日期格式'


/*----测试结果

转换成日期的结果
------------------------------------------------------
2004-04-07 00:00:00.000

(所影响的行数为 1 行)
--*/
hthunter 2004-08-16
  • 打赏
  • 举报
回复
楼主的意思是不是对于你来说2004-apr-07也是一个合法的日期?
azsoft 2004-08-16
  • 打赏
  • 举报
回复
if isdate(字段)=1
select cast(字段 as DateTime)
zjcxc 元老 2004-08-16
  • 打赏
  • 举报
回复
declare @s varchar(100)
set @s='2004-apr-07'

if isdate(@s)=1
select 转换成日期的结果=cast(@s as datetime)
else
select '不是合法的日期格式'

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧