当有人连接到特定数据库时如何获得弹出窗口
how to get a popup when someone has connected to particular database
有什么方法可以让我编写一个脚本来获取一些 x 用户已连接到特定数据库的电子邮件弹出窗口
场景:有一个 "X" 数据库,如果某个 "ABC" 用户使用某个帐户用户 ID 和密码登录到该数据库,则应该向某些联系人发送一封电子邮件:说 - - 该特定用户已连接到该数据库。
我们目前正在使用 Toad / Sql Developer 作为第三方工具来连接到 oracle 数据库。
有什么方法可以通过纠正 sql 程序或 shell 脚本或任何其他方式来实现这一目标。
一种选择是创建一个 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;
/
有什么方法可以让我编写一个脚本来获取一些 x 用户已连接到特定数据库的电子邮件弹出窗口
场景:有一个 "X" 数据库,如果某个 "ABC" 用户使用某个帐户用户 ID 和密码登录到该数据库,则应该向某些联系人发送一封电子邮件:说 - - 该特定用户已连接到该数据库。
我们目前正在使用 Toad / Sql Developer 作为第三方工具来连接到 oracle 数据库。
有什么方法可以通过纠正 sql 程序或 shell 脚本或任何其他方式来实现这一目标。
一种选择是创建一个 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;
/