程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 教你怎樣正確配置MySQL數據庫SQL Mail

教你怎樣正確配置MySQL數據庫SQL Mail

編輯:關於MYSQL數據庫

本文用個人經歷來講解SQL Mail的配置與使用。

用SQL Mail主要是要完成這樣的功能:

>用戶在網上注冊後,系統將隨機產生的密碼發送到用戶登記的Email。

>用戶在論壇的帖子有回復時將內容發送到用戶的Email。

因為上述過程都是在存儲過程中完成的,所以避免了前台程序對參數的傳輸處理,也不需要再用第三方的組件完成,比較方便。

1、為了使用SQL Mail,首先你的服務器上得有SMTP服務,我沒有安裝win2000 server自帶的SMTP,而是用imail6.04的SMTP,感覺比較穩定,功能也比較強。

2、安裝一個郵件系統,我安裝了outLook 2000,我發現在配置郵件profile時,如果不安裝outLook而是用別的第三方程序,win2k中文server版在控制面板中就找不到“郵件”一項。

3、安裝完outlook後再刷新控制面板,就會找到“郵件”一項,雙擊進行郵件的配置,為配置文件起一個名字(假設為myProfile),以便以後SQL Mail使用,在該配置文件中設置各項屬性。

4、啟動outlook(設置為用MyProfile作為默認的配置文件),測試進行收發郵件,確認outlook工作正常。

5、用當前的域帳戶啟動SQL Server,在企業管理器的支持服務中,點擊SQL Mail的屬性,可以看到在配置文件選擇中,出現了剛才定義的myProfile配置文件(你也可以定義多個profile),選擇這個配置文件進行測試,SQL將返回成功開始和結束一個MAPI會話的信息,如果出現錯誤或是沒有找到郵件配置文件,那一定是你啟動SQL Server用的帳號有問題。

6、現在你就可以在查詢分析器中用XP_sendmail這個擴展存儲過程發送SQL Mail了,格式如下:

以下為引用的內容:
xp_sendmail {[@recipients =] 'recipIEnts [;...n]'}
            [,][@message =] 'message']
            [,][@query =] 'query']
            [,][@attachments =] attachments]
            [,][@copy_recipients =] 'copy_recipIEnts [;...n]'
            [,][@blind_copy_recipients =] 'blind_copy_recipIEnts [;...n]'
            [,][@subject =] 'subject']
            [,[@type =] 'type']
            [,][@attach_results =] 'attach_value']
            [,][@no_output =] 'output_value']
            [,][@no_header =] 'header_value']
            [,][@width =] width]
            [,][@separator =] 'separator']
            [,][@echo_error =] 'echo_value']
            [,][@set_user =] 'user']
            [,][@dbuse =] 'database']

其中@recipIEnts是必需的。

參數說明:

參數 說明

@recipIEnts 收件人,中間用逗號分開。

@message 要發送的信息。

@query 確定執行並依附郵件的有效查詢,除觸發器中的插入表及刪除表外,此查詢能引用任何對象。

@attachments 附件。

@copy_recipIEnts 抄送。

@blind_copy_recipIEnts 密送。

@subject 標題。

@attach_results 指定查詢結果做為附件發送。

@no_header 不發送查詢結果的列名。

@set_user 查詢聯接的用戶名,默認為Guset。

@dbuse 查詢所用的數據庫,默認為缺省數據庫。

7、不過,如果是在web應用中使用SQL mail,還有一些問題要解決:首先,就是應用程序中連接數據庫的帳號,我在網站程序中的數據庫連接是使用UDL文件,帳號為DbGuest,這是一個普通帳戶,所以還必須在master庫的擴展存儲過程找到XP_sendmail,並在其屬性中增加DbGuest這個用戶,並選擇EXEC權限。

好了,現在設置完畢,運行網站程序,測試用戶注冊,幾乎沒有什麼延遲。



  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved