使用sql Server自帶之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許可權。
相關文章
- sql server 使用SQLServer
- SQL Server database mail問題診斷一例SQLServerDatabaseAI
- sql serverSQLServer
- Developer 帶有名為 SQL Server Compact 免費的 SQL 資料庫DeveloperSQLServer資料庫
- Oracle自帶工具sql優化集-SQL Tuning Advisor (使用心得體會)OracleSQL優化
- SQL Server之深入理解STUFFSQLServer
- SQL Server自增列跳號總結SQLServer
- sql server 帶有OUTPUT的INSERT,DELETE,UPDATESQLServerdelete
- SQL Server 建立使用者賦權報錯之Permissions at the server scope canSQLServer
- Blazor使用sql server 資料庫BlazorSQLServer資料庫
- Moebius for SQL ServerSQLServer
- SQL Server教程SQLServer
- SQL Server映象自動生成指令碼方法SQLServer指令碼
- Analysis Services基礎知識——深入SQL Server 2008SQLServer
- SQL 獲取SQL Server中兩個日期之間的所有日期SQLServer
- DB2 和SQL Server自增列比較DB2SQLServer
- SQL SERVER優化SQLServer優化
- Nodejs 操作 Sql ServerNodeJSSQLServer
- SQL Server 別名(as)SQLServer
- sql server遞迴SQLServer遞迴
- Sql server with as update用法SQLServer
- SQL Server下載SQLServer
- SQL Server Left joinSQLServer
- SQL Server SUBSTRING FunctionsSQLServerFunction
- SQL Server LEFT FunctionsSQLServerFunction
- SQL Server Unique ConstratintsSQLServer
- What is dbo in SQL Server?SQLServer
- ms sql server排序SQLServer排序
- SQL Server 替換SQLServer
- SQL 獲取SQL Server中日期最近7天之間的所有日期SQLServer
- SQL Server 2008中Analysis Services的新特性——深入SQL Server 2008SQLServer
- .sql檔案匯入到sql server中SQLServer
- SQL Server一次SQL調優案例SQLServer
- SQL Server 的xp_cmdshell和bcp使用SQLServer
- sql server匯入mysql,使用工具SQLyogServerMySql
- Windows 系統 SQL Server 配置使用安全模式WindowsSQLServer模式
- SQL Server 2017 各版本之間的差異SQLServer
- SQL Server 2012鮮為人知的兩個功能MOSQLServer