本文介紹了T-SQL中SELECT和SET有什么區(qū)別的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我正在研究一個執(zhí)行一些動態(tài) sql 的存儲過程.這是我在 4GuysFromRolla.com
I'm working on a stored proc that executes some dynamic sql. Here's the example I found on 4GuysFromRolla.com
CREATE PROCEDURE MyProc
(@TableName varchar(255),
@FirstName varchar(50),
@LastName varchar(50))
AS
-- Create a variable @SQLStatement
DECLARE @SQLStatement varchar(255)
-- Enter the dynamic SQL statement into the
-- variable @SQLStatement
SELECT @SQLStatement = "SELECT * FROM " +
@TableName + "WHERE FirstName = '"
+ @FirstName + "' AND LastName = '"
+ @LastName + "'"
-- Execute the SQL statement
EXEC(@SQLStatement)
如果您注意到,他們使用關鍵字 SELECT 而不是 SET.我不知道你能做到這一點.有人可以向我解釋兩者之間的區(qū)別嗎?我一直認為 SELECT 只是為了選擇記錄.
If you notice, they are using the keyword SELECT intead of SET. I didn't know you could do this. Can someone explain to me the differences between the 2? I always thought SELECT was simply for selecting records.
推薦答案
SELECT 是 ANSI,SET @LocalVar 是 MS T-SQL
SELECT is ANSI, SET @LocalVar is MS T-SQL
SELECT 允許多個賦值:例如 SELECT @foo = 1, @bar = 2
SELECT allows multiple assignents: eg SELECT @foo = 1, @bar = 2
這篇關于T-SQL中SELECT和SET有什么區(qū)別的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!
【網(wǎng)站聲明】本站部分內容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!