为了再开发过程中运用存储过程能够更加灵活可以试着使用拼接sql语句,动态的执行sql语句,最关键的是使用数据库的关键函数sp_executesql。
首先声明一个参数:
declare @SQLWhere nvarchar(3250)
然后给参数赋值:
set @SqlWhere ='select * from BsUser'
执行:
exec sp_executesql @SqlWhere
然后一个非常简单的动态sql 完成了:
可以发现数据库执行的是字符串里面的sql语句,既然是字符串那就可以自由拼接(当然想要执行成功也要符合sql语法规则):
declare @SQLWhere nvarchar(3250)
set @SqlWhere ='select * from GblSysMenu'
set @SqlWhere += ' where id = 2'
exec sp_executesql @SqlWhere
更多推荐
Sql字符拼接sql语句动态执行
发布评论