sql存储过程动态执行sql

Posted 康哥走荭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql存储过程动态执行sql相关的知识,希望对你有一定的参考价值。


--根据录入人获取工时统计信息
alter proc proc_GetWorkHourByEmpId
@key1 varchar(100), --关键字
@user_group1 varchar(100),--用户分组
as
begin
declare @SqlSelect nvarchar(2000),@ParmDefinition nvarchar(max);
set @SqlSelect=‘ select * from User where 1=1 ‘ --sql语句
set @ParmDefinition=N‘@key nvarchar(10),@user_group nvarchar(50) ‘;  --参数声明
if(@key1 is not null and @key1!=‘‘)
begin
set @[email protected]+‘ and (Emp_Name like @key or Emp_Number like @key or Branch_Name like @key)‘
end

if(@user_group1 is not null and @user_group1!=‘‘)
begin
set @[email protected]+‘ and User_Grouping like @user_group ‘
end

--执行sql

EXEC sp_executesql @SqlSelect,@ParmDefinition,@[email protected],
@[email protected]_group1
end



















以上是关于sql存储过程动态执行sql的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server创建存储过程——动态SQL

SQL Server创建存储过程——动态SQL

SQL Server创建存储过程——动态SQL

Oracle [存储过程] 执行动态拼接SQL语句并返回结果??

如何在oracle存储过程中执行动态sql语句

MySQL-存储过程动态执行sql