用户名以数据打头,在过程里不认。

[复制链接]
查看11 | 回复9 | 2006-4-17 13:46:34 | 显示全部楼层 |阅读模式
PL/SQL
ORACLE 9I
我写了一过程,其中有一条语句是能过链路查询最大日期,这语句在过程报表不存在,而单独执行是可以的。有人说是权限的问题。。可是不知道该授那个权限。。EXECUTER ANY PROCEDURE已经授了。。链路是没有问题。如图所示:
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
ZYGS_61数据链路=create database link ZYGS_61.US.ORACLE.COM
connect to 61zdh identified by "61zdh2007"
using 'ZYGS_61';
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
有知道的指点一下。
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
error information?
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
Compilation errors for PACKAGE BODY PEDISZDH_SJK.ZY_DBZ0600_SSSJ_61
Error: PL/SQL: ORA-00942: 表或视图不存在
Line: 33
Text: FROM DBZ0604@ZYGS_61;
Error: PL/SQL: SQL Statement ignored
Line: 32
Text: select max(clrq) into V_CLRQ
Error: Hint: Variable 'v_clsj' is declared but never used in 'ZY_DBZ0600_SSSJ_61'
Line: 5
Text: v_clsj date;
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
也可以说单独执行一个SELECT语句可以,但是,在过程里编译保错。不知道需要授予什么权限。
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
顶一下..
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
Authid Current_User不能在包中使用,Error: PLS-00157: AUTHID 只允许在方案级程序中使用
我查找解决办法:Remove the clause 我该怎么办。
CREATE OR REPLACE PACKAGE BODY ZY_DBZ0600_SSSJ_61 is
procedure ZY_DBZ0600_SSSJ_61
(c out cur)
Authid Current_User
as
V_CLRQ date;
v_clsj date;
begin
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
可以在包头定义下
CREATE OR REPLACE PACKAGE ZY_DBZ0600_SSSJ_61 AUTHID CURRENT_USER IS
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
guomulin 发表于 2007-10-26 20:14
也可以说单独执行一个SELECT语句可以,但是,在过程里编译保错。不知道需要授予什么权限。

grant select any table to 当前用户
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行