Oracle儲存過程傳送郵件 1 建立ACL

2022-09-08 22:09:25 字數 1511 閱讀 5553

--------------------sys使用者登入

--------------------如果不建立acl,可能會報錯:

--------------------ora-24247 網路訪問被訪問控制列表 (acl) 拒絕

begin

dbms_network_acl_admin.create_acl (       -- 建立訪問控制檔案(acl)

acl         => 'utl_sendmail.xml',          -- 檔名稱

description => 'sendmail access',           -- 描述

principal   => 'bidm',                   -- 授權或者取消授權賬號,大小寫敏感

is_grant    => true,                    -- 授權還是取消授權

privilege   => 'connect',               -- 授權或者取消授權的許可權列表

start_date  => null,                    -- 起始日期

end_date    => null                     -- 結束日期

);dbms_network_acl_admin.add_privilege (    -- 新增訪問許可權列表項

acl        => 'utl_sendmail.xml',           -- 剛才建立的acl名稱

principal  => 'bidm',                    -- 授權或取消授權使用者

is_grant   => true,                     -- 與上同

privilege  => 'resolve',                -- 許可權列表

start_date => null,                    

end_date   => null

);dbms_network_acl_admin.assign_acl (       -- 該段命令意思是允許訪問acl名為utl_sendmail.xml下授權的使用者,使用oracle網路訪問包,所允許訪問的目的主機,及其埠範圍。

acl        => 'utl_sendmail.xml',

host       => '*'-- ,              -- ip位址或者網域名稱,填寫http://localhost:9000/hello與http://localhost:9000/是會報host無效的

-- 且建議使用ip位址或者使用網域名稱,若用localhost,當oracle不是安裝在本機上的情況下,會出現問題

-- lower_port => 9000,                     -- 允許訪問的起始埠號

-- upper_port => null                      -- 允許訪問的截止埠號

);commit;

end;

傳送郵件 1

用於郵件傳送的模組 import smtplib qq郵件 1.配置郵箱smtp伺服器的主機位址,將來使用這個伺服器收發郵件 host smtp.qq.com 2.配置服務的埠,預設的郵件埠是25 port 465 3.指定發件人和收件人 from qq.com to qq.com 4.郵件標題 s...

Oracle 儲存過程 1

建立時的基本定義與呼叫注 create or replace 沒有就建立,有的話就更新。sql create or replace procedure helloworld as 2 begin 3 dbms output.put line hello world 4 end helloworld ...

Oracle 實現郵件傳送

create or replace procedure send mail p recipient varchar2,郵件接收人 p subject varchar2,郵件標題 p message varchar2,郵件正文 p type number 1文字 2html is 下面四個變數請根據實...