捆饶我很久的问题了,解决了送分!!

xiaowangzi 2002-07-16 01:12:24
如何来用SQL里的SQL MAIL!
偶现在想通过邮件来通知数据库管理员!!!!
偶用的是outlook行吗?急,在线等待。。。。。。。。
...全文
61 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
trustmeok 2002-07-16
  • 打赏
  • 举报
回复
下面是一个EMAIL报警的例子。 建立JOB每天早上执行该存储过程。
你的存储过程中可以先查询当天过生日的会员,会员的EMAL作为字段返回,用来做收件人;用变量把会员的姓名传入内容,即例子的MESSAGE。如果有多个会员,则用游标执行几次。 例子中把查询结果作为附件,我想你是不需要的。

CREATE PROCEDURE [dbo].[usp_CheckPrice]
as
declare @strsql varchar(2000)
set @strsql='select distinct convert(char(20),ppo_no) as ppono,'
+'convert(char(5),usage) as usage,'
+'convert(char(40),combo) as combo,'
+'convert(char(5),size) as size,'
+'convert(char(8),price,2) as price,'
+'convert(char(5),currency) as unit ,'
+'convert(char(10),delivery_date,120) as deldate from planningdb..ppo '
+ ' where isnull(lot_status,'''')<>''CANCEL'' and lot_no=original_lot_no and '
+'left(ppo_no,3) in (''KGK'',''PKG'',''PGK'') and ((isnull(price,0)=0) or (isnull(currency,'''')='''') ) '
+'and delivery_date<=dateadd(day,10,getdate()) '
+'order by ppono '
EXEC master.dbo.xp_sendmail
@recipients='genx@esquel.com;WangLin@esquel.com', //收件人
@copy_recipients ='tiany@esquel.com;chenjh@esquel.com', //抄送
@message='附件中的订单为交期在十天之内缺单价或币种的订单!请尽快补入单价!', //内容
@subject='订单价格报警', //主题
@query = @strsql, //结果作为附件
@attach_results ='true',
@no_header= 'false' ,@width=200
GO

注:以上是抄自一位不相识的老兄,并非本人"原著"
OpenVMS 2002-07-16
  • 打赏
  • 举报
回复
配置邮件配置文件
SQL 邮件和 SQLAgentMail 可以使用相同或不同的邮件配置文件。如有必要,每个邮件配置文件可以在各自的域帐户中进行配置。

配置 SQL 邮件配置文件
邮件配置文件一经配置,即专门用于 Microsoft® Windows NT® 4.0 或 Windows® 2000 用户域帐户,当用户成功登录到 Windows NT 4.0 或 Windows 2000 时,此用户帐户被激活。SQL 邮件必须在启动 Microsoft SQL Server™ 实例时所使用的同一用户域帐户或环境中创建邮件配置文件。当一个邮件存储过程执行时,SQL 邮件将在触发该过程的域帐户中查找已定义的邮件配置文件。

如果打算使用邮件存储过程,必须:

有一个遵从扩展 MAPI 的邮件服务器。

配置邮件配置文件,供 MSSQLServer 用于连接您的邮件服务器。
xiaowangzi 2002-07-16
  • 打赏
  • 举报
回复
那你先去装OUTLOOK吧!
OpenVMS(半知半解)
通过指定启动 Microsoft SQL Server™ 服务所使用的名称和密码,登录到 Microsoft® Windows NT® 4.0 或 Microsoft Windows® 2000 服务器。
是不是启动SQL就可以了!还是什么意思?
spring_ok 2002-07-16
  • 打赏
  • 举报
回复
在"控制面板"中,双击"邮件"图标以创建和配置或者复制现有的邮件配置文件
我的控制面板中没有邮件这个项目。如何设置?
已经安装了 SMTP服务。
xiaowangzi 2002-07-16
  • 打赏
  • 举报
回复
internet mail Server 不是装在互联网上的,是局域网里的一台机器行吗?
xiaowangzi 2002-07-16
  • 打赏
  • 举报
回复
展开服务器组,然后展开服务器。
展开"支持服务"项,右击"SQL 邮件"项,然后单击"属性"菜单项。
在"配置文件名"列表中,键入或选择为 SQL 邮件配置的邮件配置文件。
中的那个配置文件怎么来配置!谢谢你!
OpenVMS 2002-07-16
  • 打赏
  • 举报
回复
OutLook2000菜单---工具---选项---邮件服务---重新配置邮件支持

确认 Microsoft Outlook客户端 (Outlook.exe) 能够连接到internet mail Server 而且能够发送电子邮件。确保 Outlook 安装时选择了"用于企业或工作组"选项。
SammyXu 2002-07-16
  • 打赏
  • 举报
回复
你需要一个邮件服务器,比如Exchange Server,Outlook可以用来接收邮件,但不能用来转发邮件。
OpenVMS 2002-07-16
  • 打赏
  • 举报
回复
SQL 邮件必须使用邮件配置文件来运行,该配置文件在启动 Microsoft® SQL Server™ 实例时所使用的同一域帐户中创建。在 SQL Server 企业管理器的 Support Services 文件夹下,可以看到对 SQL 邮件服务的图形描述,并可以确定该服务是否正在运行。SQL 邮件启动后,即可以使用存储过程发送和接收邮件。
配置邮件配置文件

通过指定启动 Microsoft SQL Server™ 服务所使用的名称和密码,登录到 Microsoft® Windows NT® 4.0 或 Microsoft Windows® 2000 服务器。


在"控制面板"中,双击"邮件"图标以创建和配置或者复制现有的邮件配置文件。选择适当的邮件服务与邮件主机进行交互。为配置文件选择一个名称,此名称将帮助收件人识别消息。


在 SQL Server 的实例上,使用新创建的邮件配置文件启动邮件客户程序。


发送一个接收地址为同一配置文件名的消息,以确保邮件客户程序、邮件配置文件和电子邮件提供程序正常工作。
如果电子邮件没有出现,可能需要转到"工具"菜单中单击"立即传送"按钮以建立邮件同步。
设置 SQL 邮件

展开服务器组,然后展开服务器。


展开"支持服务"项,右击"SQL 邮件"项,然后单击"属性"菜单项。


在"配置文件名"列表中,键入或选择为 SQL 邮件配置的邮件配置文件。


单击"测试"按钮,以检查系统使用输入的配置文件启动和停止邮件客户程序服务的能力。
应收到一个消息,指出 SQL 邮件已使用该配置文件成功启动和停止邮件会话。

手工处理电子邮件

在 SQL 查询分析器中,通过执行 xp_startmail 启动 SQL Server 邮件客户程序会话。

若要查找邮箱中下一个未读邮件的 ID,请执行 xp_findnextmsg。

若要读取邮件或附件,请执行 xp_readmail(使用特定的邮件 ID),并且在 SELECT 语句中使用输出变量,在结果窗格中显示邮件。

若要删除邮件,请执行 xp_deletemail(使用特定的邮件 ID)。

若要将邮件或查询结果集发送给指定的收件人,请执行 xp_sendmail(在邮件正文中包含该查询)。

通过执行 xp_stopmail 停止 SQL Server 邮件客户程序会话。
将多个电子邮件作为调度作业处理

在 SQL 查询分析器中,通过执行 xp_startmail 启动 SQL Server 邮件客户程序会话。

执行 sp_processmail 查找、读取、响应和删除多个邮件。

通过执行 xp_stopmail 停止 SQL Server 邮件客户程序会话。


下例向用户 Robert King(电子邮件地址是 robertk)发送邮件,告知该用户 master 数据库已满。

EXEC xp_sendmail 'robertk', 'The master database is full.'

weixy 2002-07-16
  • 打赏
  • 举报
回复
EXEC xp_sendmail 'emailaddr', 'The database is full.'

trustmeok 2002-07-16
  • 打赏
  • 举报
回复
行的,你最好再安装一个EXECHANGE之类的服务.
SQL Server Enterprise Manager ->管理 ->SQL Server代理 ->操作员 ->右键新建操作员中可以设置

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧