精通Visual C++图象编程---读书笔记5

 

SQL mail主要是要完成這樣的功能有:

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

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

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

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

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許可權。



 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值