共用方式為


sp_help_alert (Transact-SQL)

報告定義給伺服器之警示的相關資訊。

語法

sp_help_alert [ [ @alert_name = ] 'alert_name' ] 
     [ , [ @order_by = ] 'order_by' ] 
          [ , [ @alert_id = ] alert_id ] 
     [ , [ @category_name = ] 'category' ] 
     [ , [ @legacy_format = ] legacy_format ]

引數

  • [ @alert_name =] 'alert_name'
    警示名稱。alert_namenvarchar(128)。如果未指定 alert_name,就會傳回有關所有警示的資訊。
  • [ @order_by =] 'order_by'
    用來產生結果的排序順序。order_bysysname,預設值是 N 'name'。
  • [ @alert_id =] alert_id
    所報告者為其相關資訊之警示的識別碼。alert_idint,預設值是 NULL。
  • [ @category_name =] 'category'
    警示的類別目錄。categorysysname,預設值是 NULL。
  • [ @legacy_format=] legacy_format
    這是指是否產生舊的結果集。legacy_formatbit,預設值是 0。當 legacy_format1 時,sp_help_alert 會傳回 Microsoft SQL Server 2000 的 sp_help_alert 所傳回的結果集。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

@legacy_format0 時,sp_help_alert 會產生下列結果集。

資料行名稱 資料類型 描述

id

int

系統指派的唯一整數識別碼。

name

sysname

警示名稱 (例如:Demo: Full msdb log)。

event_source

nvarchar(100)

事件的來源。對 Microsoft SQL Server 7.0 版而言,它一律是 MSSQLServer

event_category_id

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

event_id

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

message_id

int

定義警示的訊息錯誤號碼。(它通常對應於 sysmessages 資料表中的錯誤號碼)。如果利用嚴重性來定義警示,message_id 必須是 0 或 NULL。

severity

int

定義警示的嚴重性層級 (925110120130140)。

enabled

tinyint

目前的狀態是啟用警示 (1) 或未啟用警示 (0)。不會傳送未啟用的警示。

delay_between_responses

int

這個警示各次回應之間的等待期間 (以秒為單位)。

last_occurrence_date

int

警示上次發生的日期。

last_occurrence_time

int

警示上次發生的時間。

last_response_date

int

SQLServerAgent 服務上次回應警示的日期。

last_response_time

int

SQLServerAgent 服務上次回應警示的時間。

notification_message

nvarchar(512)

附加在電子郵件或呼叫器通知來傳給操作員的選擇性附加訊息。

include_event_description

tinyint

這是指是否應該將 Microsoft Windows 應用程式記錄檔的 SQL Server 錯誤描述併入通知訊息中。

database_name

sysname

會因發生錯誤而引發警示的資料庫。如果資料庫名稱是 NULL,不論是在哪裡發生錯誤,都會引發警示。

event_description_keyword

nvarchar(100)

Windows 應用程式記錄檔中 SQL Server 錯誤的描述,必須如同所提供的字元順序。

occurrence_count

int

警示的發生次數。

count_reset_date

int

上次重設 occurrence_count 的日期。

count_reset_time

int

上次重設 occurrence_count 的時間。

job_id

uniqueidentifier

當回應這個警示時,所執行的作業識別碼。

job_name

sysname

當回應這個警示時,所執行的作業名稱。

has_notification

int

如果向一或多個操作員通知這個警示,便是非零。這個值是下列的一或多個值 (以 OR 聯結):

1=有電子郵件通知

2=有呼叫器通知

4=有 net send 通知

flags

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

performance_condition

nvarchar(512)

如果 type2,這個資料行會顯示效能條件的定義;否則,這個資料行就是 NULL。

category_name

sysname

已保留。如果是 SQL Server 7.0,便一律是 '[Uncategorized]'。

wmi_namespace

sysname

如果 type3,這個資料行會顯示 WMI 事件的命名空間。

wmi_query

nvarchar(512)

如果 type3,這個資料行會顯示 WMI 事件的查詢。

type

int

事件類型:

1 = SQL Server 事件警示

2 = SQL Server 效能警示

3 = WMI 事件警示

@legacy_format1 時,sp_help_alert 會產生下列結果集。

資料行名稱 資料類型 描述

id

int

系統指派的唯一整數識別碼。

name

sysname

警示名稱 (例如:Demo: Full msdb log)。

event_source

nvarchar(100)

事件的來源。對 SQL Server 7.0 版而言,它一律是 MSSQLServer

event_category_id

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

event_id

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

message_id

int

定義警示的訊息錯誤號碼。(它通常對應於 sysmessages 資料表中的錯誤號碼)。如果利用嚴重性來定義警示,message_id 必須是 0 或 NULL。

severity

int

定義警示的嚴重性層級 (925110120130140)。

enabled

tinyint

目前的狀態是啟用警示 (1) 或未啟用警示 (0)。不會傳送未啟用的警示。

delay_between_responses

int

這個警示各次回應之間的等待期間 (以秒為單位)。

last_occurrence_date

int

警示上次發生的日期。

last_occurrence_time

int

警示上次發生的時間。

last_response_date

int

SQLServerAgent 服務上次回應警示的日期。

last_response_time

int

SQLServerAgent 服務上次回應警示的時間。

notification_message

nvarchar(512)

附加在電子郵件或呼叫器通知來傳給操作員的選擇性附加訊息。

include_event_description

tinyint

這是指是否應該將 Windows 應用程式記錄檔的 SQL Server 錯誤描述併入通知訊息中。

database_name

sysname

會因發生錯誤而引發警示的資料庫。如果資料庫名稱是 NULL,不論是在哪裡發生錯誤,都會引發警示。

event_description_keyword

nvarchar(100)

Windows 應用程式記錄檔中 SQL Server 錯誤的描述,必須如同所提供的字元順序。

occurrence_count

int

警示的發生次數。

count_reset_date

int

上次重設 occurrence_count 的日期。

count_reset_time

int

上次重設 occurrence_count 的時間。

job_id

uniqueidentifier

作業識別碼。

job_name

sysname

回應這個警示所需執行的作業。

has_notification

int

如果向一或多個操作員通知這個警示,便是非零。這個值是下列的一或多個值 (以 OR 聯結):

1=有電子郵件通知

2=有呼叫器通知

4=有 net send 通知。

flags

int

警告僅做為識別目的。不支援。我們無法保證未來的相容性。

performance_condition

nvarchar(512)

如果 type2,這個資料行會顯示效能條件的定義。如果 type3,這個資料行會顯示 WMI 事件的查詢。否則,這個資料行是 NULL。

category_name

sysname

警告僅做為識別目的。不支援。我們無法保證未來的相容性。 對 Microsoft SQL Server 7.0 版而言,它一律是 '[未分類]'。

type

int

警示類型:

1 = SQL Server 事件警示

2 = SQL Server 效能警示

3 = WMI 事件警示

備註

sp_help_alert 必須從 msdb 資料庫中執行。

權限

依預設,只有系統管理員 (sysadmin) 固定伺服器角色的成員,才能夠執行這個預存程序。其他使用者必須被授與 msdb 資料庫的 SQLAgentOperatorRole 固定資料庫角色。

如需有關 SQLAgentOperatorRole 的詳細資料,請參閱<SQL Server Agent 固定資料庫角色>。

範例

下列範例會報告 Demo: Sev. 25 Errors 這項警示的相關資訊。

USE msdb ;
GO

EXEC sp_help_alert @alert_name = 'Demo: Sev. 25 Errors'
GO

請參閱

參考

sp_add_alert (Transact-SQL)
sp_update_alert (Transact-SQL)
系統預存程序 (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助