Home
R
Cancel

[SQL] Begin End 區塊

BEGIN…END 語句簡介 BEGIN...END語句用來定義語句區塊,語句區塊由一組一起執行的SQL語句組成。 語句區塊也稱為「批次處理」。(可以定義一系列同時執行的 T-SQL 陳述句) 換句話說,如果語句是句子,則BEGIN...END語句允許定義段落。 (如果有多句陳述句要一起執行就應該使用BEGIN END 包起來) 語法 BEGIN { s...

[SQL] If Else

IF @i > 10 BEGIN --條件成立 END ELSE BEGIN --條件不成立 END 如果 Begin End 中間只有單行程式碼,Begin End可省略不打。 範例1 if 1=1 print 'true' else print 'false' 範例2 IF DATENAME(weekday, GETDATE())...

[SQL] 變數

變數 變數的宣告有兩種使用:「@」或「@@」符號開頭 @開頭的為「區域變數(Local Variables)」 @@符號開始的為「系統函數」(它也是一種「全域變數」) 注意: 有些 Transact-SQL 系統函數的名稱開頭是兩個 at 符號 (@@)。 雖然,在舊版 SQL Server 中,@@ 函數是作為全域變數,但 @@ 函數並不是變數,其行為也和...

[SQL] Stored Procedure 預存程序的變數

在預存程序中使用變數時,必須要先宣告。 在Declare後宣告變數,變數名稱要以「@」為開頭,以Set來給變數賦值。 create procedure uspTest --定義參數 as declare --宣告變數 begin --處理內容 end 範例 create or alter proc uspTest --定義參數 @nam...

[SQL] Stored Procedure 預存程序的回傳值 (Return)

SQL SERVER 的預存程序可以用Return語法來停止預存程式,並傳回一個整數值。 Return無法傳整數以外的型態,也不能傳回null值。 要回傳資料給叫用端,有幾下幾種方式: 在最後一行使用 SELECT 語法回傳表格資料 使用輸出參數(Output Parameter)的方式回傳資料 使用 RETURN 語法回傳一個整數型別(Int32)的狀態碼 範...

[SQL] Stored Procedure 預存程序的參數

預存程序的參數有: Input 輸入參數 Output 輸出參數 create proc uspGetCount --定義參數 @id int = 1, --輸入參數 @count int output --輸出參數(要加output) as begin --處理內容(SQL語句) end 1. Input 輸入參數 Input 輸入參數:預...

[SQL] Stored Procedure 預存程序的執行方法 (Exec)

執行預存程序要使用execute語法(可以簡寫為exec),在execute後面寫要執行的預存程序的名稱。 exec 預存程序名稱 @變數1 = '值1', @變數2 = '值2' 執行方式 --無參數 exec stored_porcedure --以位置名稱(必須按照SP變數定義的順序) exec stored_porcedure value1, value2,... --以...

[SQL] Stored Procedure 預存程序的建立

語法 create procedure 預存程序名稱 --宣告參數 (輸入參數、輸出參數) as declare --宣告變數 begin --處理內容 end 範例 --製作統計所指定商品ID的販賣數量的預存程序 create procedure uspGetSum @id int, --要傳入的參數 @sum int output --輸出參...

[SQL] 取得權限資訊 (sp_helprotect、sp_table_privileges、sp_column_privileges)

取得權限資訊 sp_helprotect --顯示權限一覽表 sp_helprotect @username='username' --顯示使用者的權限 sp_table_privileges 'table_name' --顯示資料表的權限 sp_column_privileges 'table_name' --顯示資料表欄位的權限 範例 sp_helprotect --顯示權限一覽...

[SQL] 取得Session資訊 (SP_WHO)

提供 SQL Server 實例中目前使用者、工作階段和進程的相關信息,資料庫引擎。 您可以篩選資訊,只傳回那些未閑置、屬於特定用戶或屬於特定會話的進程。 語法 sp_who [ [ @loginame = ] { 'login' | *session_id* | 'ACTIVE' } ] [ ; ] 參數: [ @loginame = ] { ‘login’ | sessio...