当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 教你怎样正确配置MySQL数据库SQL Mail

MYSQL
mysql 常用数据库语句 小练习
MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)问题的解决
mysql 字符集的系统变量说明
MySQL 在触发器里中断记录的插入或更新?
将MySQL数据库移植为PostgreSQL
mysql 操作总结 INSERT和REPLACE
linux mysql忘记密码的多种解决或Access denied for user ''root''@''localhost''
运用mysqldump 工具时需要注意的问题
mysql 优化日记
MySQL 字符串函数大全
mysql 截取指定的两个字符串之间的内容
MySQL 备份还原数据库批处理
mysql 数据库中my.ini的优化 2G内存针对站多 抗压型的设置
Mysql 数字类型转换函数
mysql 动态生成测试数据
mysql 显示SQL语句执行时间的代码
mysql 设置查询缓存
MYSQL explain 执行计划
MySQL 有输入输出参数的存储过程实例
巧用mysql提示符prompt清晰管理数据库的方法

MYSQL 中的 教你怎样正确配置MySQL数据库SQL Mail


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 100 ::
收藏到网摘: n/a

本文用个人经历来讲解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权限。

好了,现在设置完毕,运行网站程序,测试用户注册,几乎没有什么延迟。