sp_add_operator (Transact-SQL)

建立操作員 (通知收件者) 來搭配使用警示和作業。

主題連結圖示Transact-SQL 語法慣例

語法

sp_add_operator [ @name = ] 'name' 
     [ , [ @enabled = ] enabled ] 
     [ , [ @email_address = ] 'email_address' ] 
     [ , [ @pager_address = ] 'pager_address' ] 
     [ , [ @weekday_pager_start_time = ] weekday_pager_start_time ] 
     [ , [ @weekday_pager_end_time = ] weekday_pager_end_time ] 
     [ , [ @saturday_pager_start_time = ] saturday_pager_start_time ] 
     [ , [ @saturday_pager_end_time = ] saturday_pager_end_time ] 
     [ , [ @sunday_pager_start_time = ] sunday_pager_start_time ] 
     [ , [ @sunday_pager_end_time = ] sunday_pager_end_time ] 
     [ , [ @pager_days = ] pager_days ] 
     [ , [ @netsend_address = ] 'netsend_address' ] 
     [ , [ @category_name = ] 'category' ] 

引數

  • [ @name= ] 'name'
    操作員 (通知收件者) 的名稱。這個名稱必須是唯一的,且不能包含百分比 (%) 字元。name 是 sysname,沒有預設值。

  • [ @enabled= ] enabled
    指出操作員目前的狀態。enabled 是 tinyint,預設值是 1 (已啟用)。如果是 0,就表示不啟用操作員,操作員也不會收到通知。

  • [ @email_address= ] 'email_address'
    操作員的電子郵件地址。這個字串會直接傳給電子郵件系統。email_address 是 nvarchar(100),預設值是 NULL。

    您可以指定 email_address 的實體電子郵件地址或別名。例如:

    'jdoe' 或 'jdoe@xyz.com'

    [!附註]

    您只能針對 SQL Mail 使用電子郵件別名。您必須針對 Database Mail 使用電子郵件地址。

  • [ @pager_address= ] 'pager_address'
    操作員的呼叫器號碼。這個字串會直接傳給電子郵件系統。pager_address 是 narchar(100),預設值是 NULL。

  • [ @weekday_pager_start_time= ] weekday_pager_start_time
    從星期一到星期五的工作日,SQL Server Agent 在經過這段時間之後,便將呼叫器通知傳給指定的操作員。weekday_pager_start_time 是 int,預設值是 090000,表示 24 小時制的上午 9:00,必須用 HHMMSS 格式來輸入。

  • [ @weekday_pager_end_time= ] weekday_pager_end_time
    從星期一到星期五的工作日,SQLServerAgent 服務在經過這段時間之後,便不再將呼叫器通知傳給指定的操作員。weekday_pager_end_time 是 int,預設值是 180000,表示 24 小時制的下午 6:00,必須用 HHMMSS 格式來輸入。

  • [ @saturday_pager_start_time =] saturday_pager_start_time
    星期六,SQLServerAgent 服務在經過這段時間之後,便將呼叫器通知傳給指定的操作員。saturday_pager_start_time 是 int,預設值是 090000,表示 24 小時制的上午 9:00,必須用 HHMMSS 格式來輸入。

  • [ @saturday_pager_end_time= ] saturday_pager_end_time
    星期六,SQLServerAgent 服務在經過這段時間之後,便不再將呼叫器通知傳給指定的操作員。saturday_pager_end_time 是 int,預設值是 180000,表示 24 小時制的下午 6:00,必須用 HHMMSS 格式來輸入。

  • [ @sunday_pager_start_time= ] sunday_pager_start_time
    星期日,SQLServerAgent 服務在經過這段時間之後,便將呼叫器通知傳給指定的操作員。sunday_pager_start_time 是 int,預設值是 090000,表示 24 小時制的上午 9:00,必須用 HHMMSS 格式來輸入。

  • [ @sunday_pager_end_time =] sunday_pager_end_time
    星期日,SQLServerAgent 服務在經過這段時間之後,便不再將呼叫器通知傳給指定的操作員。sunday_pager_end_time 是 int,預設值是 180000,表示 24 小時制的下午 6:00,必須用 HHMMSS 格式來輸入。

  • [ @pager_days= ] pager_days
    這是一個數字,指出操作員能夠接收呼叫的天數 (遵照指定的開始/結束時間)。pager_days 是 tinyint,預設值是 0,表示操作員永不接收呼叫。有效的值是從 0127。pager_days 的計算方式是加入必要天數的個別值。例如,從星期一到星期五是 2+4+8+16+32 = 62。下表列出一星期中各天的值。

    描述

    1

    星期日

    2

    星期一

    4

    星期二

    8

    星期三

    16

    星期四

    32

    星期五

    64

    星期六

  • [ @netsend_address= ] 'netsend_address'
    網路訊息所要送往的操作員網路位址。netsend_address 是 nvarchar(100),預設值是 NULL。

  • [ @category_name= ] 'category'
    這位操作員的類別目錄名稱。category 是 sysname,預設值是 NULL。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

備註

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

電子郵件系統也支援傳呼,如果您要使用傳呼,電子郵件系統必須有「電子郵件至呼叫器」的功能。

SQL Server Management Studio 提供了一種簡單的圖形方式供您管理各項作業,建議您利用這個方式來建立和管理作業基礎結構。

權限

只有系統管理員 (sysadmin) 固定伺服器角色的成員,才能夠執行 sp_add_operator

範例

下列範例設定 danwi 的操作員資訊。操作員是啟用的狀態。SQL Server Agent 會在星期一到星期五的上午 8 點至下午 5 點,利用呼叫器來傳送通知。

USE msdb ;
GO

EXEC dbo.sp_add_operator
    @name = N'Dan Wilson',
    @enabled = 1,
    @email_address = N'danwi',
    @pager_address = N'5551290AW@pager.Adventure-Works.com',
    @weekday_pager_start_time = 080000,
    @weekday_pager_end_time = 170000,
    @pager_days = 62 ;
GO