我有什么办法可以编写脚本来获取弹出窗口,作为某些x用户已连接到特定数据库的电子邮件
方案:存在一个“ X”数据库,如果某个“ ABC”用户已使用某些帐户用户ID和密码登录到该数据库,则应触发一封电子邮件给某些联系人:说-该特定用户已连接到该数据库。
我们当前正在使用Toad / Sql Developer作为第三方工具来连接到oracle数据库。
我有什么办法可以通过纠正sql过程或shell脚本或其他任何方式来实现这一目标。
答案 0 :(得分:1)
一种选择是创建一个AFTER LOGON
触发器,例如
CREATE OR REPLACE TRIGGER trg_user_connected
AFTER LOGON
ON DATABASE
DECLARE
l_global_name varchar2(30);
BEGIN
SELECT global_name
INTO l_global_name
FROM global_name;
UTL_MAIL.send (sender => 'noreply@orcl',
recipients => 'avinash@gmail.com',
cc => NULL,
bcc => NULL,
mime_type => NULL,
subject => 'Logged right now into ' || l_global_name,
MESSAGE => USER);
END;
/
您可能会想以某种方式限制它(否则您的收件箱会爆炸:))。
[编辑:放置对象]
CREATE OR REPLACE TRIGGER trg_bd
AFTER DROP
ON SCHEMA
DECLARE
oper VARCHAR2 (100);
BEGIN
SELECT ora_sysevent INTO oper FROM DUAL;
IF oper = 'DROP'
THEN
utl_mail.send ...
END IF;
END;
/