1.执行存储过程
// 执行存储过程无参数
EXEC 存储过程名
// 执行存储过程有参数
EXEC 存储过程名 参数1,参数2,...
2.执行动态Sql语句(不输出变量)
// 执行动态Sql 语句
DECLARE @sql NVARCHAR(max)
set @sql='......'
--记得加括号要不然会认为是执行存储过程,会报错
EXEC (@sql)
3.执行动态Sql语句(输出变量)
// EXEC sp_executesql 执行动态Sql 语句
DECLARE @count INT
DECLARE @id INT=1
SET @sql=' select @count=count(*) from 表 where id=@id
EXEC sp_executesql @sql,N'@count int out',@count OUT,@id
--外面就能得到@count 的值了
EXEC (@sql)