首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

从字符串变换日期和/或时间时,转换失败

2013-07-25 
从字符串转换日期和/或时间时,转换失败遇到一个问题:消息 241,级别 16,状态 1,过程 convertdatetimeTest,

从字符串转换日期和/或时间时,转换失败
遇到一个问题:

消息 241,级别 16,状态 1,过程 convertdatetimeTest,第 9 行
从字符串转换日期和/或时间时,转换失败。



/*
--datetime convert test
*/
use master
go

create procedure convertdatetimeTest
(
@input varchar
)
as
begin 
declare @datetime datetime
set @datetime=CONVERT(datetime,@input)
select @datetime
end

exec convertdatetimeTest '2013-7-17 13:15:07'





执行存储过程时报这个错误?




为什么我直接执行--select CONVERT(datetime,'2013-7-17 13:15:07')没有错呢? 

为什么存储过程就不能讲串转换成时间? SQL 存储
[解决办法]
 @input varchar  改成  @input varchar(30)
[解决办法]
默认长度为1,被截断以后再转换格式是不对的。
[解决办法]
varchar、char如果不指定括号中的长度,就是varchar(1)/char(1),联机丛书有说,存不进日期这么长,就自然报错了

热点排行