首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

剔除不了同义词,求大神

2012-12-26 
删除不了同义词,求大神数据库实例名:PWMIS_DB 两个用户名:jazz和pwmisjazz和pwmis用户名下有个相同的DBlin

删除不了同义词,求大神
数据库实例名:PWMIS_DB 两个用户名:jazz和pwmis
jazz和pwmis用户名下有个相同的DBlink:PW2DPS

jazz用户下建了个同义词:
create or replace synonym DPS_ISOLATION_TYPE
  for DPS_ISOLATION_TYPE@PW2DPS;

pwmis用户下建了个同义词:
create or replace synonym DPS_ISOLATION_TYPE
  for jazz.DPS_ISOLATION_TYPE@PW2DPS;

现在没有DPS_ISOLATION_TYPE这张实表,在正常的情况下应该是jazz有这张表,但是我在pwmis下建同义词的时候忘记jazz那里已经有个相同的同义词,所以在pwmis下面的同义词References目录下是引用了jazz的同义词。现在两个同义词删也删不掉,修改液修改不了,一删除整个PL/SQL就没有响应了。不知道有没有人遇到过这样的情况。这个数据库不能重启,没有DBA账户。我想删了jazz下的同义词建一张实表。求大神。。。。。。。。。。。。。。。
[最优解释]
有可能有正在运行的过程或其它正在引用这同义词,造成删除不了,让dba查一下
[其他解释]
在两个用户下,用

select * from user_synonyms

列出同义词,看看之间的引用关系。
[其他解释]
用jazz和pwmis分别登陆,然后分别执行 drop synonym jazz.DPS_ISOLATION_TYPE ;
 drop synonym pwmis.DPS_ISOLATION_TYPE ;
[其他解释]

drop synonym DPS_ISOLATION_TYPE force;

[其他解释]
或者用 drop public synonym pwmis.DPS_ISOLATION_TYPE 试一试;
[其他解释]
执行了还是一直在运行状态。我们公司一个老员工说可能是造成了一个死循环的状况了。
[其他解释]
同义词自己引用自己,这个导致循环引用,进入死循环没碰到过这种问题。

是否有人碰到过类似问题呢?

[其他解释]
引用:
用jazz和pwmis分别登陆,然后分别执行 drop synonym jazz.DPS_ISOLATION_TYPE ;
 drop synonym pwmis.DPS_ISOLATION_TYPE ;

您好,我使用了您说的方法,但是SQL执行的时候一直是执行状态。情况可能也是和直接右键drop一样吧
[其他解释]
引用:
有可能有正在运行的过程或其它正在引用这同义词,造成删除不了,让dba查一下

你好,现在的问题就是jazz用户下的同义词被pwmis用户下的同义词引用了。两个都删不掉了
[其他解释]
引用:
在两个用户下,用

select * from user_synonyms

列出同义词,看看之间的引用关系。

你好,引用的关系就如我上面所说的,一个同义词引用了另一个同义词。

热点排行