- SQL Server 2016從入門到精通(視頻教學超值版)
- 王英英
- 1034字
- 2019-12-06 15:49:28
5.4 其他基本語句
T-SQL中除了這些重要的數據定義、數據操作和數據控制語句之外,還提供了一些其他的基本語句,以此來豐富T-SQL語句的功能。本節將介紹數據聲明、數據賦值和數據輸出語句。
5.4.1 數據聲明——DECLARE
數據聲明語句可以聲明局部變量、游標變量、函數和存儲過程等,除非在聲明中提供值,否則聲明之后所有變量將初始化為NULL。可以使用SET或SELECT語句對聲明的變量賦值。DECLARE語句聲明變量的基本語法格式如下:

- @ local_variable:變量的名稱。變量名必須以at符號(@)開頭。
- data_type:系統提供數據類型或是用戶定義的表類型或別名數據類型。變量的數據類型不能是text、ntext或image。AS指定變量的數據類型,為可選關鍵字。
- = value:聲明的同時為變量賦值。值可以是常量或表達式,但它必須與變量聲明類型匹配,或者可隱式轉換為該類型。
【例5.29】聲明兩個局部變量,名稱為username和pwd,并為這兩個變量賦值,輸入語句如下。

這里定義了兩個變量,其中保存了用戶名和驗證密碼,輸出結果如圖5-22所示。

圖5-22 使用DECLARE聲明局部變量
代碼中第一個SELECT語句用來對定義的局部變量@pwd賦值,第二個SELECT語句顯示局部變量的值。
5.4.2 數據賦值——SET
SET命令用于對局部變量進行賦值,也可以用于用戶執行SQL命令時設定SQL Server中的系統處理選項,SET賦值語句的語法格式如下:

第一條SET語句表示對局部變量賦值,value是一個具體的值,expression是一個表達式;第二條語句表示對執行SQL命令時的選項賦值,ON表示打開選項功能,OFF表示關閉選項功能。
SET語句可以同時對一個或多個局部變量賦值。
SELECT語句也可以為變量賦值,其語法格式與SET語句格式相似。

提示
在SELECT賦值語句中,當expression為字段名時,SELECT語句可以使用其查詢功能返回多個值,但是變量保存的是最后一個值;如果SELECT語句沒有返回值,則變量值不變。
【例5.30】查詢stu_info表中的學生成績,并將其保存到局部變量stuScore中,輸入語句如下。

代碼執行結果如圖5-23所示。

圖5-23 使用SELECT語句為變量賦值
由圖5-23可以看到,SELECT語句查詢的結果中最后一條記錄的s_score字段值為88,給stuScore賦值之后,其顯示值為88。
5.4.3 數據輸出——PRINT
PRINT語句可以向客戶端返回用戶定義信息,可以顯示局部或全局變量的字符串值。其語法格式如下。

- msg_str:是一個字符串或Unicode字符串常量。
- @local_variable:任何有效的字符數據類型的變量。它的數據類型必須為char或varchar,或者必須能夠隱式轉換為這些數據類型。
- string_expr:字符串的表達式。可包括串聯的文字值、函數和變量。
【例5.31】定義字符串變量name和整數變量age,使用PRINT輸出變量和字符串表達式值,輸入語句如下。

代碼執行結果如圖5-24所示。

圖5-24 使用PRINT輸出變量結果
代碼中第3行輸出字符串常量值,第4行PRINT的輸出參數為一個字符串串聯表達式。
- ExtGWT Rich Internet Application Cookbook
- Learn TypeScript 3 by Building Web Applications
- Hyper-V 2016 Best Practices
- iOS 9 Game Development Essentials
- Windows系統管理與服務配置
- Python爬蟲開發與項目實戰
- RISC-V體系結構編程與實踐(第2版)
- Java零基礎實戰
- Java EE項目應用開發
- Wearable:Tech Projects with the Raspberry Pi Zero
- Java EE實用教程
- Python數據預處理技術與實踐
- Instant Pygame for Python Game Development How-to
- SaaS攻略:入門、實戰與進階
- C++ Data Structures and Algorithm Design Principles