Como Enviar e-mail en Oracle Database 12C
Lo primero que hay que hacer es instalar el paquete UTL_MAIL el cual se encuentra en los binarios del Oracle home de la base de datos, para ello se debe de realizar la ejecucion de los siguiente paquetes:
- To install UTL_MAIL:
sqlplus sys/<pwd>
SQL> @$ORACLE_HOME/rdbms/admin/utlmail.sql
SQL> @$ORACLE_HOME/rdbms/admin/prvtmail.plb
Instalacion de los paquetes:
Luego de realizar la instalacion de los paquetes se debe de asignar el servidor SMTP de salida a nivel de parametros de inicializacion de Oracle, el parametro que se debe de modificar es SMTP_OUT_SERVER esta parametro es de tipo dinamico por lo cual no se requiere bajar la base de datos.
Ejemplo:
Servidor de correo es: smtp.example.com
Para agregar el servidor de correo al parametro SMTP_OUT_SERVER
SQL> alter system set smtp_out_server='smtp.example.com';
System altered.
Por ultimo si se requiere crear un sinonimo publico para acceder al paquete de envio e mail desde cualquier schema de base de datos.
SQL> GRANT EXECUTE ON utl_mail TO PUBLIC;
Grant succeeded.
Finalmente recordar que se debe de crear una ACL para que la base de datos permita acceder al servidor de correo smtp.example.com.
Para hacer uso del paquete, se muestra el siguiente ejemplo:
begin
UTL_MAIL.send(sender => 'fgconsultoresti@gmail.com',
recipients => 'FMESA@CGIAR.ORG',
subject => 'Test
utl_mail.send procedure',
MESSAGE
=> 'If you are reading this it worked!');
end;