Мне нужно направить мой dbms_output по почте - PullRequest
0 голосов
/ 24 июня 2009

В рамках моей повседневной деятельности мне необходимо:

  • запустить процедуру,
  • получить вывод в блокноте,
  • скопируйте часть по почте и отправьте ее бизнесу.

Если бы я мог отправлять почту из базы данных, это сэкономило бы немного времени. Является ли это возможным? Если да, может кто-нибудь поделиться примерами кодов?

Ответы [ 4 ]

1 голос
/ 24 июня 2009

Если вы используете Oracle 10g или более поздней версии, вы также можете использовать UTL_MAIL (который в основном является оболочкой над UTL_SMTP).

UTL_MAIL.SEND (
   sender     => 'me@host'
   recipients => 'you@host',
   subject    => 'test email',
   message    => 'Hello!');

Но обратите внимание - из документов:

UTL_MAIL не устанавливается по умолчанию из-за SMTP_OUT_SERVER требование к конфигурации и тому подверженность безопасности это включает в себя. В установка UTL_MAIL, вы должны взять шаги, чтобы предотвратить порт, определенный SMTP_OUT_SERVER завален передача данных.

Вы должны установить UTL_MAIL и определить SMTP_OUT_SERVER.

Чтобы установить UTL_MAIL:

sqlplus sys/<pwd>
SQL> @$ORACLE_HOME/rdbms/admin/utlmail.sql
SQL> @$ORACLE_HOME/rdbms/admin/prvtmail.plb

Вы определяете SMTP_OUT_SERVER параметр в init.ora rdbms файл инициализации.

0 голосов
/ 24 июня 2009

Oracle предоставляет несколько пакетов, которые вы можете использовать для отправки почты Следующая ссылка говорит об этом

текст ссылки http://www.orafaq.com/wiki/Send_mail_from_PL/SQL

0 голосов
/ 24 июня 2009

Эта вики-статья должна вам помочь: http://www.orafaq.com/wiki/Send_mail_from_PL/SQL

Это для Oracle 8, но оно должно работать и с 10 или выше.

Редактировать: Дамба, чтобы замедлить ^^

0 голосов
/ 24 июня 2009

Используйте UTL_SMTP , чтобы напрямую создавать письма из вашей процедуры plsql. ( пример кода ) Предупреждение: сервер базы данных должен иметь доступ к почтовому серверу; в некоторых организациях правила брандмауэра предотвращают это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...