如何在儲存過程中執行set命令 我來答
阿新 • • 發佈:2018-11-08
1.EXEC使用
EXEC命令兩種用種執行儲存程另種執行態批處理所講都第二種用
面先使用EXEC演示例,程式碼1
DECLARE @TableName VARCHAR(50),@Sql NVARCHAR (MAX),@OrderID INT;
SET @TableName = 'Orders';
SET @OrderID = 10251;
SET @sql =
'SELECT * FROM '+QUOTENAME(@TableName) +'WHERE OrderID = '+
CAST(@OrderID AS VARCHAR(10))+' ORDER BY ORDERID DESC'
EXEC(@sql);
sp_executesql命令SQL Server引入比EXEC命令晚些主要重用執行計劃提供更支援
EXEC作鮮明比,我看看用程式碼1程式碼EXEC換sp_executesql,看看否我所期望結
DECLARE @TableName VARCHAR(50),@sql NVARCHAR(MAX),@OrderID INT ,@sql2 NVARCHAR(MAX);
SET @TableName = 'Orders ';
SET @OrderID = 10251;
SET @sql = 'SELECT * FROM '+QUOTENAME(@TableName) + ' WHERE OrderID = '+CAST(@OrderID AS VARCHAR(50)) + ' ORDER BY ORDERID DESC'
EXEC sp_executesql @sql
先申明out引數,再執行過程,記得過程中out引數前的冒號。