17,377
社区成员
发帖
与我相关
我的任务
分享
--authid current_user
create or replace function xxx return INT AUTHID CURRENT_USER IS
x INT;
BEGIN
EXECUTE IMMEDIATE 'SELECT 1 FROM v$sql_bind_capture WHERE ROWNUM=1' INTO x;
RETURN x;
END;
/
SQL> select xxx from dual;
XXX
----------
1
--authid definer
create or replace function xxx return INT IS
x INT;
BEGIN
EXECUTE IMMEDIATE 'SELECT 1 FROM v$sql_bind_capture WHERE ROWNUM=1' INTO x;
RETURN x;
END;
/
SQL> select xxx from dual;
select xxx from dual
ORA-00942: 表或视图不存在
ORA-06512: 在 "DBO.XXX", line 4