SQLServer系統變量使用


1、@@IDENTITY
返回最后插入的標識值。這個變量很有用,當你插入一行數據時,想同時獲得該行的的ID(標示列),就可以用@@IDENTITY
示例:下面的示例向帶有標識列的表中插入一行,並用 @@IDENTITY 顯示在新行中使用的標識值。
INSERT INTO jobs (job_desc,min_lvl,max_lvl) VALUES ('Accountant',12,125)
SELECT @@IDENTITY AS 'Identity'

2、@@ROWCOUNT
返回受上一語句影響的行數。
示例:下面的示例執行 UPDATE 語句並用 @@ROWCOUNT 來檢測是否有發生更改的行。
UPDATE authors SET au_lname = 'Jones'  WHERE au_id = '999-888-7777'
IF @@ROWCOUNT = 0
print 'Warning: No rows were updated'

3、@@CONNECTIONS
返回自上次啟動 Microsoft SQL Server以來連接或試圖連接的次數。
示例:下面的示例顯示了到當前日期和時間為止試圖登錄的次數。
SELECT GETDATE() AS 'Date and Time', @@CONNECTIONS AS 'Login Attempts'

4、@@CPU_BUSY
返回自上次啟動 Microsoft SQL Server以來 CPU 的工作時間,單位為毫秒(基於系統計時器的分辨率)。
示例:下面的示例顯示了到當前日期和時間為止 SQL Server CPU 的活動
SELECT @@CPU_BUSY AS 'CPU ms', GETDATE() AS 'As of'

5、@@DATEFIRST
返回 SET DATEFIRST 參數的當前值,SET DATEFIRST 參數指明所規定的每周第一天:1 對應星期一,2 對應星期二,依次類推,用 7 對應星期日。
示例:下面的示例將每周第一天設為 5 (星期五),並假定當日是星期六。SELECT 語句返回 DATEFIRST 值和當日是此周的第幾天。
SET DATEFIRST 5
SELECT @@DATEFIRST AS '1st Day', DATEPART(dw, GETDATE()) AS 'Today'

6、@@IO_BUSY
返回 Microsoft SQL Server自上次啟動后用於執行輸入和輸出操作的時間,單位為毫秒(基於系統計時器的分辨率)。
示例:下面的示例顯示 SQL Server 自啟動到目前已用於執行輸入/輸出操作的毫秒數。
SELECT @@IO_BUSY AS 'IO ms', GETDATE() AS 'As of'

7、@@LANGID
返回當前所使用語言的本地語言標識符(ID)。
示例:下面的示例將當前會話的語言設置為意大利語 (Italian),然后用 @@LANGID 返回意大利語的 ID。
SET LANGUAGE 'Italian'
SELECT @@LANGID AS 'Language ID'

8、@@LANGUAGE
返回當前使用的語言名。
示例:下面的示例返回當前會話的語言。
SELECT @@LANGUAGE AS 'Language Name'

9、@@MAX_CONNECTIONS
返回 Microsoft SQL Server上允許的同時用戶連接的最大數。返回的數不必為當前配置的數值。
示例:下面的示例假定 SQL Server 尚未被重新配置更少的用戶連接。
SELECT @@MAX_CONNECTIONS

10、@@PACK_RECEIVED
返回 Microsoft SQL Server自上次啟動后從網絡上讀取的輸入數據包數目。
示例
SELECT @@PACK_RECEIVED

11、@@PACK_SENT
返回 Microsoft SQL Server自上次啟動后寫到網絡上的輸出數據包數目。
示例
SELECT @@PACK_SENT

12、@@PACKET_ERRORS
返回自 SQL Server 上次啟動后,在 Microsoft SQL Server連接上發生的網絡數據包錯誤數。
示例
SELECT @@PACKET_ERRORS

13、@@SERVERNAME
返回運行 Microsoft SQL Server的本地服務器名稱。
示例
SELECT @@SERVERNAME

14、@@SERVICENAME
返回 Microsoft SQL Server正在其下運行的注冊表鍵名。若當前實例為默認實例,則 @@SERVICENAME 返回 MSSQLServer;若當前實例是命名實例,則該函數返回實例名。
示例
SELECT @@SERVICENAME

15、@@SPID
返回當前用戶進程的服務器進程標識符 (ID)。
示例:下面的示例返回當前用戶進程的進程 ID、登錄名和用戶名。
SELECT @@SPID AS 'ID', SYSTEM_USER AS 'Login Name', USER AS 'User Name'

16、@@TIMETICKS
返回一刻度的微秒數。
示例
SELECT @@TIMETICKS

17、@@TOTAL_ERRORS
返回 Microsoft SQL Server自上次啟動后,所遇到的磁盤讀/寫錯誤數。
示例:下面的示例顯示了 SQL Server 到當前日期和時間為止所遇到的錯誤數。
SELECT @@TOTAL_ERRORS AS 'Errors', GETDATE() AS 'As of'

18、@@TOTAL_WRITE
返回 Microsoft SQL Server自上次啟動后寫入磁盤的次數。
示例:下面的示例顯示了到當前日期和時間為止總的磁盤讀寫次數。
SELECT @@TOTAL_READ AS 'Reads', @@TOTAL_WRITE AS 'Writes', GETDATE() AS 'As of'

19、@@VERSION
返回 Microsoft SQL Server當前安裝的日期、版本和處理器類型。
示例:下面的示例返回當前安裝的日期、版本和處理器類型。
SELECT @@VERSION

20、@@TOTAL_READ
返回 Microsoft SQL Server自上次啟動后讀取磁盤(不是讀取高速緩存)的次數。
示例:下面的示例顯示了到當前日期和時間為止的總的磁盤讀寫次數。
SELECT @@TOTAL_READ AS 'Reads', @@TOTAL_WRITE AS 'Writes', GETDATE() AS 'As of'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM