我在使用Oracle 10g中的UTL_MAIL包时遇到了一些麻烦,并且想知道是否有人有任何解决方案?
我以SYSMAN身份连接到我的数据库并加载以下两个脚本;
@C:\ ORACLE \产品\ 10.2.0\DB_1\RDBMS\ADMIN\utlmail.sql
@C:\ ORACLE \产品\ 10.2.0\DB_1\RDBMS\ADMIN\prvtmail.plb
我设置了SMTP服务器;
ALTER SYSTEM SET smtp_out_server ='mymailserver.fake:25'SCOPE = BOTH;
我授予用户所需的权限;
GRANT执行ON utl_mail TO MYUSER;
但是如果我连接到"MYTABLESPACE"(MYUSER存在的地方),如果我参考UTL_MAIL.SEND,我会收到以下错误;
PLS-00201:必须声明标识符'UTL_MAIL.SEND'
如果我用SYSMAN虽然(SYSMAN.UTL_MAIL.SEND)前缀它,它的工作原理,但我不想这样做,因为这个程序包含此调用没有哪个安装脚本中的表空间的知识.
有没有办法安装这些脚本,以便它们可以普遍访问,并且不需要执行SYSMAN前缀?
干杯,
克里斯
我很确定公共同义词是唯一的区别.
SELECT * FROM ALL_SYNONYMS WHERE OWNER = 'PUBLIC' and table_name LIKE 'UTL%'
将确认或否认