2021新升級

卡了很久WP都沒法自動更新,於是狠下心進行了升級,
也把PHP升級到7.4,卻發現遇了一些雷

記錄遇到的幾個問題:

  • 出現Call to undefined function mysql_connect(), 原因是PHP 7.4沒有mysql,改用mysqli
  • 原使用的佈景主題”achang-bigorange”,出現Strict Standards: Only variables should be passed by reference in,因後續沒有更新版本,且本人懶的改程式,所以就只能和它說BYE BYE


取得 Execute SQL 裡面資料的值

原文: https://rainmakerho.github.io/2017/10/03/20171003-2/

(1) Store Procedue ,透過 sp_executesql + 它的 output 參數來取得資料
DECLARE @sql NVARCHAR(max), @outputcode NVARCHAR(4000);
SET @sql =
'EXEC SP_GETSERNO @RETURNS=@outputcode output';
exec sp_executesql @sql, N'@outputcode NVARCHAR(4000) out', @outputcode out
SELECT @outputcode;


(2) 取得 t-sql 裡面的內容,需要先建立 temp table ,或是 TABLE 變數,然後在 Exec 的 t-sql 裡面使用
DECLARE @ATT_IDENT TABLE (ATT_IDENT int);
INSERT @ATT_IDENT
exec ('SELECT top 1 ATT_IDENT FROM [dbo].[myTable]');
select * FROM @ATT_IDENT;


(3) t-sql,透過 sp_executesql + 它的 output 參數來取得資料,例如,
DECLARE @IDT NUMERIC
exec sp_executesql N'SELECT TOP 1 @IDT = ATT_IDENT FROM [dbo].[myTable]', N'@IDT NUMERIC out', @IDT OUT
SELECT @IDT;

(4) 透過 OPENQUERY 的方式,詳細可以參考「讓 Execute 可以搭配 Select Into,而不再只有 Insert into