全域性變數名稱 | 描述 |
@@CONNECTIONS | 返回 SQL Server 自上次啟動以來嘗試的連線數。 |
@@CPU_BUSY | 返回 SQL Server 自上次啟動後的工作時間。 |
@@CURSOR_ROWS | 返回連線上開啟的上一個遊標中的當前限定行的數目, 確定當其被呼叫時檢索了遊標符合條件的行數。 |
@@DATEFIRST | 針對會話返回 SET DATEFIRST 的當前值,SET DATEFIRST 表示指定的 每週的第一天。 |
@@DBTS | 返回當前資料庫的當前 timestamp 資料型別的值, 這一時間戳值在資料庫中必須是唯一的。 |
@@ERROR | 返回執行的上一個 Transact-SQL 語句的錯誤號, 如果前一個 Transact-SQL 語句執行沒有錯誤,則返回 0。 |
@@FETCH_STATUS | 返回針對連線當前開啟的任何遊標發出的上一條遊標 FETCH 語句的狀態。 |
@@IDENTITY | 返回上次插入的標識值。 |
@@IDLE | 返回 SQL Server 自上次啟動後的空閒時間。結果以 CPU 時間 增量或“時鐘週期”表示,並且是所有 CPU 的累積。 |
@@IO_BUSY | 返回自從 SQL Server 最近一次啟動以來,Microsoft SQL Server 已經用於執行輸入和輸出操作的時間。其結果是 CPU 時間增量 (時鐘週期),並且是所有 CPU 的累積值 |
@@LANGID | 返回當前使用的語言的本地語言識別符號 (ID)。 |
@@LANGUAGE | 返回當前所用語言的名稱。 |
@@LOCK_TIMEOUT: | 返回當前會話的當前鎖定超時設定(毫秒)。 |
@@MAX_CONNECTIONS | 返回 SQL Server 例項允許同時進行的最大使用者連線數。 返回的數值不一定是當前配置的數值。 |
@@MAX_PRECISION | 按照伺服器中的當前設定,返回 decimal 和 numeric 資料型別 所用的精度級別。 |
@@NESTLEVEL | 返回對本地伺服器上執行的當前儲存過程的巢狀級別(初始值為 0)。 |
@@OPTIONS | 返回有關當前 SET 選項的資訊。 |
@@PACK_RECEIVED | 返回 SQL Server 自上次啟動後從網路讀取的輸入資料包數。 |
@@PACK_SENT | 返回 SQL Server 自上次啟動後寫入網路的輸出資料包個數。 |
@@PACKET_ERRORS | 返回自上次啟動 SQL Server 後,在 SQL Server 連線上發生的網路 資料包錯誤數。 |
@@PROCID | 返回 Transact-SQL 當前模組的物件識別符號 (ID)。Transact-SQL 模組可以是儲存過程、使用者定義函式或觸發器。 |
@@REMSERVER | 返回遠端 SQL Server 資料庫伺服器在登入記錄中顯示的名稱。 |
@@ROWCOUNT | 返回受上一語句影響的行數。 |
@@SERVERNAME | 返回執行 SQL Server 的本地伺服器的名稱。 |
@@SERVICENAME | 返回 SQL Server 正在其下執行的登錄檔項的名稱。若當前例項為 預設例項,則 @@SERVICENAME 返回 MSSQLSERVER。 |
@@SPID | 返回當前使用者程式的會話 ID。 |
@@TEXTSIZE | 返回 SET 語句中的 TEXTSIZE 選項的當前值。 |
@@TIMETICKS | 返回每個時鐘週期的微秒數。 |
@@TOTAL_ERRORS | 返回 SQL Server 自上次啟動之後所遇到的磁碟寫入錯誤數。 |
@@TOTAL_READ | 返回 SQL Server 自上次啟動後讀取磁碟(不是讀取快取記憶體)的次數。 |
@@TOTAL_WRITE | 返回 SQL Server 自上次啟動以來所執行的磁碟寫入次數。 |
@@TRANCOUNT | 返回當前連線的活動事務數。 |
@@VERSION | 返回當前的 SQL Server 安裝的版本、處理器體系結構、生成日期 和作業系統。 |
SQL Server中常用全域性變數和系統資訊
還有一些系統資訊的獲取方法,例如伺服器上次啟動時間。[@more@]
以上全域性變數有很多都是得到計算機相關版本對CPU及相關屬性的獲取,也有一些我們在編寫Transact-SQL經常使用到的全域性變數,下面對幾個全域性變數做一下解釋:
@@DATEFIRST:看下面示例執行的結果:
SET DATEFIRST 5 SELECT @@DATEFIRST AS ' firstDay ', DATEPART(dw, GETDATE()) AS 'Today' |
上面意思為設每一天的星期五為第一天,那麼今天是星期日,執行的結果如下:
firstDay Today
------- -----------
5 3
@@ERROR:在使用的頻度特別高,特別在一些儲存過程的使用中,如我們在每更新一個操作都想對其異常進行判斷和檢測,這時候我產會根據@@ERROR的值進行判斷,如:
IF @@ERROR <> 0 BEGIN --在此丟擲錯誤的異常 --退出儲存過程 END |
@@IDENTITY:在一條 INSERT、SELECT INTO 或大容量複製語句完成後,@@IDENTITY 中包含語句生成的最後一個標識值。如果語句未影響任何包含標識列的表,則 @@IDENTITY 返回 NULL。如果插入了多個行,生成了多個標識值,則 @@IDENTITY 將返回最後生成的標識值。如果語句觸發了一個或多個觸發器,該觸發器又執行了生成標識值的插入操作,那麼,在語句執行後立即呼叫 @@IDENTITY 將返回觸發器生成的最後一個標識值。如果對包含標識列的表執行插入操作後觸發了觸發器,並且觸發器對另一個沒有標識列的表執行了插入操作,則 @@IDENTITY 將返回第一次插入的標識值。出現 INSERT 或 SELECT INTO 語句失敗或大容量複製失敗,或者事務被回滾的情況時,@@IDENTITY 值不會恢復為以前的設定。
@@ROWCOUNT:返回上一語句影響的行數,我們常見的就是在更新/刪除/插入或查詢資料的語句後,會用這個語句進行判斷,這個變數儲存了上步操作所影響的行數,如:
--資料庫操作影響的行數 IF @@ ROWCOUNT >0 BEGIN --插入成功 END |
sys.dm_os_sys_info 取伺服器作業系統相關資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/66009/viewspace-1060551/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【SQL Server】常用全域性變數SQLServer變數
- SQL Server中的全域性變數SQLServer變數
- SQL Server 全域性變數SQLServer變數
- 靜態全域性變數和全域性變數變數
- node 全域性物件和全域性變數物件變數
- Python中的全域性變數和區域性變數Python變數
- PHP超全域性變數$_SERVER分析PHP變數Server
- shell全域性(系統)環境變數變數
- 區域性變數和全域性變數變數
- javascript中的作用域(全域性變數和區域性變數)JavaScript變數
- angular中定義全域性變數及全域性變數的使用Angular變數
- 變數的分類(臨時(本地)變數、環境變數、全域性變數和系統變數)變數
- java 全域性變數和區域性變數Java變數
- JavaScript —— 區域性變數和全域性變數JavaScript變數
- jmeter全域性變數和區域性變數JMeter變數
- vue定義全域性變數和全域性方法Vue變數
- python全域性變數和區域性變數, globalPython變數
- 全域性變數變數
- php傳引用和全域性變數PHP變數
- js-js的全域性變數和區域性變數JS變數
- 全域性變數和靜態變數的區別變數
- 全域性變數與區域性變數變數
- 全域性 DOM 變數變數
- lua全域性變數變數
- C語言區域性變數、全域性變數、靜態區域性變數、靜態全域性變數C語言變數
- Python的區域性變數和全域性變數使用解惑Python變數
- Python的全域性和區域性變數Python變數
- Java區域性變數與全域性變數Java變數
- 【c】全域性變數與區域性變數變數
- SQL Server中的臨時表和表變數SQLServer變數
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- 十二、變數作用域:區域性變數、全域性變數,函式版名片管理系統—新增函式文件變數函式
- js宣告全域性變數JS變數
- python全域性變數Python變數
- 在vue專案中 如何定義全域性變數 全域性函式Vue變數函式
- oracle中的全域性環境變數配置Oracle變數
- Android中全域性變數與區域性變數的使用總結Android變數
- python全域性變數與區域性變數Python變數