带参数的存储过程实现任意条件的查询
2008-10-22 15:44
483 查看
今天想实现一个带参数的存储过程实现任意条件的查询,开始这样写死活不行
set @str = 'select * from mainTable where ' + @colName + @operate+ @value
后来发现,这个语句是没有错的, 实际上应该在传入参数@value的时候写成 ' value ' , 这样就能组合成
where name = ‘value’。
或者不想传值的时候传一个带单撇号‘的字符串的话也可以把语句这样改写。
set @str = 'select * from mainTable where ' + @colName + @operate+ ''''@value''''
要注意到,这里需要4个单撇号,才能生成 where name = ‘value’这种样式。
第三种方法直接在 exec()方法里面写
exec('select * from mainTable where ' + @colName + @operate+ @value)
exec()这个方法里面的@value不用加单撇号也可以运行where name = ‘value’。
set @str = 'select * from mainTable where ' + @colName + @operate+ @value
后来发现,这个语句是没有错的, 实际上应该在传入参数@value的时候写成 ' value ' , 这样就能组合成
where name = ‘value’。
或者不想传值的时候传一个带单撇号‘的字符串的话也可以把语句这样改写。
set @str = 'select * from mainTable where ' + @colName + @operate+ ''''@value''''
要注意到,这里需要4个单撇号,才能生成 where name = ‘value’这种样式。
第三种方法直接在 exec()方法里面写
exec('select * from mainTable where ' + @colName + @operate+ @value)
exec()这个方法里面的@value不用加单撇号也可以运行where name = ‘value’。
相关文章推荐
- ContentResolver.query的参数问题 按条件实现模糊查询
- 万能分页存储过程(带第一页性能优化,任意条件查询,任意字段排序)
- MySQL 存储过程或者函数中传参数实现where id in(1,2,3,...)IN条件拼接
- 用存储过程实现多条件查询的方法
- 使用MVC,实现多条件查询,排序与分页 的 存储过程
- 使用一个存储过程实现多条件查询
- 判断存储过程查询条件参数为空
- 使用ADF-BC 实现查询功能之四:通过代码动态设置Where条件参数
- MyBatis中的动态SQL,实现不确定条件的CRUD-----使用Map来传递查询的参数
- repeater插入,多选删除,条件查询实例(存储过程实现)
- MVC调用存储过程实现分页,带查询条件
- 动态SQL中 实现条件参数 varchar类型的参数名称 以及模糊查询实现
- 使用ADF-BC 实现查询功能之八:通过代码动态设置Criteria条件参数
- sql 自定义函数 ,where后拼接条件跳转语句,实现可变参数查询
- 存储过程实现多条件查询
- 如何用存储过程实现下面功能:以表名为参数,查询出这个表中的所有数据
- (四)Python查询12306余票:docopt实现参数的输入-----查询任意时间任意车站余票
- sql 中用case when实现复杂的条件查询
- struts hibernate spring 实现分页、排序、复杂条件查询②
- MyBatis--索引号实现多条件查询