xp_findnextmsg (Transact-SQL)
接受輸入的訊息識別碼,傳回輸出的訊息識別碼。xp_findnextmsg 用來搭配 sp_processmail,以處理 Microsoft SQL Server 收件匣中的郵件。
附註: |
---|
未來的 Microsoft SQL Server 發行版本將不再提供此功能。請避免在新的開發工作中使用此功能,並計劃修改目前使用此功能的應用程式。 |
語法
xp_findnextmsg [ [ @type= ] type ]
[ , [ @unread_only= ] 'unread_value' ]
[ , [ @msg_id= ] 'message_id' [ OUTPUT ] ]
引數
[ @type=] type
這是以 MAPI 定義為基礎的輸入訊息類型:IP[M|C].Vendorname.subclass
如果 type 是 NULL,開頭是
IPM
的訊息類型會出現在郵件用戶端的收件匣中,xp_findnextmsg 會尋找或讀取它們。開頭是IPC
的訊息類型不會出現在郵件用戶端的收件匣中,您必須設定 type 參數來尋找或讀取它們。預設值是 NULL。SQL Mail 支援訊息類型IPM
和IPC
。
- [ @unread_only=] 'unread_value'
這是指是否只考慮未讀取 (N'TRUE') 的訊息。預設值是 N'FALSE',表示考慮所有訊息。unread_value 的類型是 nvarchar(5)。
- [ @msg_id=] 'message_id'
這是一個輸入和輸出參數,用來指定輸入的訊息字串和輸出之下一則訊息的字串。如果輸入的 message_id 是 NULL,依預設,輸出 @msg_id 便是收件匣中最近傳遞之訊息的識別碼。message_id 是 varchar(255),預設值是 NULL。
- OUTPUT
當指定這個項目時,message_id 會放在輸出參數中。當沒有指定這個項目時,message_id 會以單一資料行、單一資料列的結果集傳回。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
當傳遞有效的訊息識別碼時,xp_findnextmsg 會傳回一則訊息。
當 @msg_id 是 NULL 時,xp_findnextmsg 會傳回下列結果集。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Message ID |
varchar(255) |
下一則訊息的訊息識別碼。 |
備註
除了無效參數,任何失敗都會記錄到 Microsoft Windows 應用程式記錄檔中。
權限
需要系統管理員 (sysadmin) 固定伺服器角色中的成員資格,但是 EXECUTE 權限可以授與其他使用者。不過,基於安全性的考量,建議您將這個預存程序的權限限制在系統管理員 (sysadmin) 固定伺服器角色的成員。
範例
下列範例會在搜尋下一個訊息識別碼時擷取狀態 (只適用於未讀取的訊息)。xp_findnextmsg
中的值放在本機變數 @message_id
中。
DECLARE @status int, @message_id varchar(255) ;
EXEC @status = xp_findnextmsg @msg_id = @message_id OUTPUT ;
請參閱
參考
sp_processmail (Transact-SQL)
系統預存程序 (Transact-SQL)
xp_deletemail (Transact-SQL)
xp_readmail (Transact-SQL)
xp_sendmail (Transact-SQL)
xp_startmail (Transact-SQL)
xp_stopmail (Transact-SQL)