SQL存储过程: 在将 varchar 值 '%' 转换成数据类型 int 时失败
我用一个textbox 输入信息查询人员信息,textbox内容可以是客户名称,电话,电子邮件,QQ/MSN,客户姓名,客户公司名,地址,备注等内容。可能是文字也可能是数字。然后我的存储过程是这样的:
@chaxun varchar(30)=‘’
SELECT 。。。
where rymc like '%'+@chaxun +'%'
or [renyuandetail(人员详细)].xm like '%'+@chaxun +'%'
or xb like '%'+@chaxun +'%'
or [renyuandetail(人员详细)].zw like '%'+@chaxun +'%'
or lxdh like '%' +cast(ltrim(rtrim(@chaxun)) as int) +'%' /*lxdh是int型的,这样转换有错吗?*/
or sj like '%'+@chaxun +'%'
or email like '%'+@chaxun +'%'
or QQMSN like '%' +cast(ltrim(rtrim(@chaxun)) as int) +'%'
or gsm like '%'+@chaxun +'%'
or yb like '%' +cast(ltrim(rtrim(@chaxun)) as int) +'%'
or txdz like '%'+@chaxun +'%'
or cz like '%' +cast(ltrim(rtrim(@chaxun)) as int) +'%'
or bz like '%'+@chaxun +'%'
当我输入@chaxun=“1234455”时,显示“在将 varchar 值 '%' 转换成数据类型 int 时失败。”
请问该怎么改正?谢谢!
--------------------编程问答-------------------- where rymc like ''%'+@chaxun +'%'''
注意数好'的个数!
提示:
declare @s varchar(100)
set @s=''''
print @s
结果输出一个'
补充:.NET技术 , C#