在将 varchar 值转换成数据类型 int 时失败。
今天最大的杯具! 写了一个存储过程 居然报这个错 代码如下
alter proc sd
(
@MyUnitInfo_id varchar(100),
@jianhao varchar(100),
@name varchar(100),
@cartype varchar(100),
@address varchar(100),
@pinpai varchar(100)
)
as
BEGIN
declare @sqlstr nvarchar(4000)
set @sqlstr='select * from MaterialInfos where MyUnitInfo_id='+cast(@MyUnitInfo_id as varchar(100))
if @jianhao <> ''
begin
set @sqlstr=@sqlstr+' and MaterialInfo_Id='+cast(@jianhao as varchar(100))
end
if @name <> ''
begin
set @sqlstr=@sqlstr+ ' and MaterialInfo_Name='+cast(@name as varchar(100))
end
if @cartype <> ''
begin
set @sqlstr=@sqlstr+' and ApplyCarTypes='+cast(@cartype as varchar(100))
end
if @address <> ''
begin
set @sqlstr=@sqlstr+' and ProduceArea_Id='+cast(@address as varchar(100))
end
if @pinpai <> ''
begin
set @sqlstr=@sqlstr+' and Brands_Id='+cast(@pinpai as varchar(100))
end
exec(@sqlstr)
END
晕倒得很,问题是报错的列 不是int型!
在将 varchar 值 'd0d12d0e-c494-4cc4-aca2-0492518d6690' 转换成数据类型 int 时失败。 请教各位。。。。