declare @terminalSetIds varchar(8000)='1,2' //类型varchar
declare @condictions varchar(8000)=''
declare @sql varchar(8000)=''
--set @terminalSetIds = REPLACE(@terminalSetIds,'''','')
select @condictions=@condictions+' or '+[SQL] from TERMINAL_SET_DEFINITION where Terminal_Set_Id in(@terminalSetIds) //值就是 1,2
结果:Conversion failed when converting the varchar value '1,2' to data type int. 请问如何解决,搞不定了..求帮忙了 急...
declare @condictions varchar(8000)=''
declare @sql varchar(8000)=''
--set @terminalSetIds = REPLACE(@terminalSetIds,'''','')
select @condictions=@condictions+' or '+[SQL] from TERMINAL_SET_DEFINITION where Terminal_Set_Id in(@terminalSetIds) //值就是 1,2
结果:Conversion failed when converting the varchar value '1,2' to data type int. 请问如何解决,搞不定了..求帮忙了 急...
解决方案 »
- ASP.NET程序链接2个Access数据库.
- 请求 通过按钮隐藏panel 详请看内容
- 请问大家,有没有效率高点的方法来获得表单数据封装实体?
- 如何实现单击gridview其中一列时,让这一列变成选定状态,双击这一列时,让他进入编辑状态?
- 为求技能吐血高分求解(ASP.NET Starter Kit入门指南)
- 用Windows XP SP2版本的系统装VS.NET 2005要不要装什么补丁啊?有经验的请进
- 简单问题,请问如何保持从数据库读出的文本格式?
- 进来坐坐,不要客气啊!问题简单啊
- datagrid控件,如何一行放2条记录
- (菜鸟问题)这个正则表达式怎么写
- ASP.NET 怎么实现 服务器端文件的选择并获得该文件名称
- 网站后台添加文章用什么控件,怎么用
declare @terminalSetIds varchar(8000)=''1','2'' //类型varchar
调用
where Terminal_Set_Id in(’+@terminalSetIds+‘) //值就是 1,2
然后再
EXEC(@sql)
就好了 ~
像:
declare @ids varchar(20)
declare @sql nvarchar(200)
set @ids='1,2'
set @sql='select * from news where id in('+@ids+')'
execute sp_executesql @sql
declare @terminalSetIds varchar(8000)='1,2' //类型varchar
@terminalSetIds的值是不确定的 说不定是1,2,3,4,5 或者1
这样我的sql语句只能拼接吗