xp_startmail (Transact-SQL)
啟動 SQL Mail 用戶端工作階段。啟動郵件工作階段會開啟 MAPI 用戶端元件,且會登入電子郵件伺服器。
附註: |
---|
未來的 Microsoft SQL Server 發行版本將不再提供此功能。請避免在新的開發工作中使用此功能,並計劃修改目前使用此功能的應用程式。 |
語法
xp_startmail [ [ @user= ] 'mapi_profile_name' ]
[ , [ @password= ] 'mapi_profile_password' ]
引數
- [ @user = ] 'mapi_profile_name'
這是一個用來指定郵件設定檔名稱的選擇性參數。mapi_profile_name 是 sysname,沒有預設值。如果未提供這個參數,就會使用 Microsoft Outlook 中所設定的時間。
- [ @password = ] 'mapi_profile_password'
這是指定的 mapi_profile_name 的郵件密碼。mapi_profile_password 是 sysname,沒有預設值。當在執行 xp_startmail 之前啟動郵件用戶端 (在同一部電腦上) 時,不允許使用 NULL 值。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
xp_startmail 會傳回這則訊息:
SQL mail session started.
備註
如果提供了 mapi_profile_name 和 mapi_profile_password,SQL Server 會嘗試利用設定檔名稱和密碼來登入 MAPI 提供者。如果提供了 mapi_profile_name 和 mapi_profile_password,但不正確,就會傳回錯誤訊息。如果未提供 mapi_profile_name 和 mapi_profile_password,SQL Server 會使用 [SQL Mail 組態] 對話方塊指定的設定檔名稱和密碼。如果未明確提供設定檔名稱或密碼,SQL Server 會嘗試利用預設的 MAPI 設定檔來登入 MAPI 提供者。部分 MAPI 提供者可能會設定成使用 Windows 驗證,此時會忽略 MAPI 密碼。
附註: |
---|
如果您利用 xp_startmail 來啟動您的郵件工作階段,您可以選擇性地提供您的登入名稱和密碼,以免必須在命令提示字元之下輸入它。不過,如果有現存的 MAPI 工作階段在執行中,便不會在它上面執行 SQL Mail。這個行為與 SQL Server 7.0 版及更早的版本不同。 |
如果有現存的郵件工作階段,xp_startmail 不會啟動新的郵件工作階段。如果使用郵件時所在的電腦也在執行 SQL Server,且 SQL Mail 設定成會在 SQL Server 啟動時自動啟動,就必須在執行 xp_startmail 之前,或在啟動 SQL Server 之前,啟動郵件用戶端。
權限
需要系統管理員 (sysadmin) 固定伺服器角色中的成員資格,但是 EXECUTE 權限可以授與其他使用者。不過,基於安全性的考量,建議您將這個預存程序的權限限制在系統管理員 (sysadmin) 固定伺服器角色的成員。
範例
下列範例利用 Microsoft Outlook 指定的使用者名稱和密碼作為執行 SQL Server 時所用的 Microsoft Windows 帳戶之預設設定檔來啟動郵件。
USE master
EXEC xp_startmail ;
GO
請參閱
參考
sp_processmail (Transact-SQL)
系統預存程序 (Transact-SQL)
xp_deletemail (Transact-SQL)
xp_findnextmsg (Transact-SQL)
xp_readmail (Transact-SQL)
xp_sendmail (Transact-SQL)
xp_stopmail (Transact-SQL)