在
SQL Server 變數使用示範(包含動態執行 SQL 語法)
這篇文章中有示範動態執行 SQL 語法,但是其實這很不安全,很容易受到 SQL Injection 攻擊。
我們可以使用內建的 sp_executesql 來傳入參數,避免全部語法都是動態組合而成,難以檢查傳入的內容是否安全。
使用示範:
文章撰寫中...請稍後...
參考資料:
Microsoft.Learn - sp_executesql (Transact-SQL)
我們可以使用內建的 sp_executesql 來傳入參數,避免全部語法都是動態組合而成,難以檢查傳入的內容是否安全。
使用示範:
DECLARE @SQL NVARCHAR(MAX)
DECLARE @ID INT
SET @SQL = N'SELECT * FROM Users WHERE UserId = @UserId'
SET @ID = 1001
EXEC sp_executesql @SQL, N'@UserId INT', @UserId = @ID
文章撰寫中...請稍後...
參考資料:
Microsoft.Learn - sp_executesql (Transact-SQL)
留言
張貼留言
如果有任何問題、建議、想說的話或文章題目推薦,都歡迎留言或來信: a@ruyut.com