可透過 sp_executesql 來達到需求
--範例 DECLARE @xGPNo varchar(2)--查詢變數 DECLARE @xDTNo varchar(3)--查詢變數 DECLARE @xSQL Nvarchar(MAX)--存放動態語法 DECLARE @xGPNa Nvarchar(20)--接收回傳值 DECLARE @xDTNa Nvarchar(50)--接收回傳值 DECLARE @xStatemen nvarChar(MAX)--sp_executesql 參數 SET @xGPNo = 'SO'--指定值 SET @xDTNo = 'B01'--指定值 --參數設定順序需與語法一致 SET @xStatemen = '@xGPNa Nvarchar(20) OUT,@xDTNa Nvarchar(50) OUT,@xGPNo varchar(2),@xDTNo varchar(3)' --查詢語法 SET @xSQL = 'select @xGPNa=GPNa,@xDTNa=DTNa '+ ' from NOM '+ ' where GPNo='+Quotename(@xGPNo,'''')+ ' and DTNo='+Quotename(@xDTNo,'''') --語法、參數、回傳值及相關變數 EXEC sp_executesql @xSQL,@xStatemen,@xGPNa OUT,@xDTNa OUT,@xGPNo,@xDTNo --結果 select @xGPNa+'-'+@xDTNa ----------------------------------------------------------------------- 成品出入庫類別-銷貨出庫 (1 個資料列受到影響)參考自:TechNet-sp_executesql、MSDN-使用 sp_executesql
沒有留言:
張貼留言