使用TRIGGER sql

时间:2016-10-14 14:09:41

标签: sql oracle triggers

您好我正在研究PL / SQL Developper并且我遇到了一个恼人的错误......我正试图在“JDEF”数据库中添加某些内容时触发发送电子邮件。 这是我的代码:

CREATE OR REPLACE TRIGGER Send_Email
AFTER INSERT
ON JDEF
BEGIN 
        EXEC msdb.dbo.sp_send_dbmail
             @profile_name = 'me',
             @recipients = 'example@ent.com',
             @body = 'The stored procedure finished successfully.',
             @subject = 'Automated Success Message'
END

错误编译适用于以下两行:EXEC msdb.dbo.sp_send_dbmail AND @profile_name ='me'。他们谈论“MSDB”和“,”符号被其他人替换以进行编译。

你有什么想法可以帮助我吗?

THX

1 个答案:

答案 0 :(得分:0)

您的代码看起来像oracle标准的mssql发送电子邮件的方式是例如:

UTL_MAIL.send(sender => 'me@ent.com',
            recipients => 'example@ent.com',
               subject => 'Automated Success Message',
               message => 'The stored procedure finished successfully.',
             mime_type => 'text; charset=us-ascii');

但是在使用UTL_MAIL之前需要启用它。发送邮件的另一个包是UTL_TCP 这可能会有所帮助:http://www.orafaq.com/wiki/Send_mail_from_PL/SQL