SQL server上的變量
4.4.1 局部變量
局部變量是用戶可自定義的變量,它的作用范圍僅在程序內(nèi)部。在程序中通常用來儲(chǔ)存從表中查詢到的數(shù)據(jù),或當(dāng)作程序執(zhí)行過程中暫存變量使用。局部變量必須以“@”開頭,而且必須先用DECLARE命令說明后才可使用。其說明形式如下:
DECLARE @變量名 變量類型 [@變量名 變量類型…]
其中變量類型可以是SQL Server 2000支持的所有數(shù)據(jù)類型,也可以是用戶自定義的數(shù)據(jù)類型。DECLARE命令的詳細(xì)用法請(qǐng)參見“4.6其它命令”。
在Transact-SQL中不能像在一般的程序語言中一樣使用“變量=變量值”來給變量賦值。必須使用SELECT或SET命令來設(shè)定變量的值,其語法如下:
SELECT@局部變量=變量值
SET @局部變量=變量值
例4-5:聲明一個(gè)長度為10 個(gè)字符的變量“id”并賦值
declare@id char(10)
select@id=‘10010001’
注意:可以在Select命令查詢數(shù)據(jù)時(shí),在Select命令中直接將列值賦給變量。例4-6:查詢編號(hào)為“10010001”的員工和工資,將其分別賦予變量name和wage。
例4-6
use pangu
declare@name char(30)@wage money
select@name=e_name,@wage=e_wage
from employee
where emp_id='10010001'
select@name as e_name,@wage as e_wage
運(yùn)行結(jié)果如下:
e_name e_wage
------------------------------ -----------
張三 8000.0000
注意:數(shù)據(jù)庫語言和編程語言有一些關(guān)鍵字,關(guān)鍵字是在某一一樣下能夠促使某一操作發(fā)生的字符組合,為避免沖突和產(chǎn)生錯(cuò)誤,在命令表、列、變量以及其它對(duì)象時(shí)應(yīng)避免使用關(guān)鍵字。有關(guān)SQL Server的關(guān)鍵字請(qǐng)參見附錄。
4.4.2 全局變量
全局變量是SQL Server系統(tǒng)內(nèi)部使用的變量,其作用范圍并不局限于某一程序,而是任何程序均可隨時(shí)調(diào)用全局變量通常存儲(chǔ)一些SQL Server的配置設(shè)定值和效能統(tǒng)計(jì)數(shù)據(jù)。用戶可在程序中用全局變量來測試系統(tǒng)的設(shè)定值或Transact-SQL命令執(zhí)行后的狀態(tài)值。有關(guān)SQL Server 全局變量的詳細(xì)情況請(qǐng)參見附錄。
注意:全局變量不是由用戶的程序定義的,它們是在服務(wù)器級(jí)定應(yīng)義的。只能使用預(yù)先說明及定義的變局變量。引用全局變量時(shí),必須以“@@”開頭。局部變量的名稱不能與全局變量的名稱相同、否則會(huì)在應(yīng)用中出錯(cuò)。
關(guān)鍵字:SQL server、數(shù)據(jù)庫
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解