程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> MS SQL基礎教程:SQL變量

MS SQL基礎教程:SQL變量

編輯:關於SqlServer

Transact-SQL中可以使用兩種變量,一種是局部變量(Local Variable)另外一種是全局變量(Global Variable)。

4.4.1 局部變量

局部變量是用戶可自定義的變量,它的作用范圍僅在程序內部。在程序中通常用來儲存從表中查詢到的數據,或當作程序執行過程中暫存變量使用。局部變量必須以“@”開頭,而且必須先用DECLARE命令說明後才可使用。其說明形式如下:

DECLARE @變量名 變量類型 [@變量名 變量類型…]

其中變量類型可以是SQL Server 2000支持的所有數據類型,也可以是用戶自定義的數據類型。DECLARE命令的詳細用法請參見“4.6其它命令”。

在Transact-SQL中不能像在一般的程序語言中一樣使用“變量=變量值”來給變量賦值。必須使用SELECT或SET命令來設定變量的值,其語法如下:

SELECT@局部變量=變量值

SET @局部變量=變量值

例4-5:聲明一個長度為10 個字符的變量“id”並賦值

declare@id char(10)

select@id=‘10010001’

注意:可以在Select命令查詢數據時,在Select命令中直接將列值賦給變量。例4-6:查詢編號為“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

運行結果如下:

e_name e_wage

------------------------------ -----------

張三 8000.0000

注意:數據庫語言和編程語言有一些關鍵字,關鍵字是在某一一樣下能夠促使某一操作發生的字符組合,為避免沖突和產生錯誤,在命令表、列、變量以及其它對象時應避免使用關鍵字。有關SQL Server的關鍵字請參見附錄。

4.4.2 全局變量

全局變量是SQL Server系統內部使用的變量,其作用范圍並不局限於某一程序,而是任何程序均可隨時調用全局變量通常存儲一些SQL Server的配置設定值和效能統計數據。用戶可在程序中用全局變量來測試系統的設定值或Transact-SQL命令執行後的狀態值。有關SQL Server 全局變量的詳細情況請參見附錄。

注意:全局變量不是由用戶的程序定義的,它們是在服務器級定應義的。只能使用預先說明及定義的變局變量。引用全局變量時,必須以“@@”開頭。局部變量的名稱不能與全局變量的名稱相同、否則會在應用中出錯。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved