ORA-01775: 同义词的循环链问题

179 篇文章 16 订阅
7 篇文章 0 订阅

一、问题描述

ORA-01775: 同义词的循环链问题
在这里插入图片描述

二、 原因分析

同义词对应的对象(表等)已删除,不存在了。

可能原因:

  • 删除数据库对象,但是忘记删除同义词。
  • 删除一个用户,但忘记删除此用户中相关的同义词。
  • 创建同义词时,同同义词对应的数据库对象已经被删掉了。

三、处理方法

为了方便使用和管理,一般同义词是和表名或者视图名一致的。

1.查看是否有名称不一致的同义词和对象

 select * from dba_synonyms where  table_owner='STUDY' and synonym_name<>table_name;

这里的table_owner是用户名, synonym_name是同义词名称, table_name 是表名。

2.查看与同义词同名对象已不存在的同义词

select * from dba_synonyms
where table_owner='STUDY'
and synonym_name in (select a.synonym_name from dba_synonyms a where a.table_owner='STUDY'  minus select object_name from user_objects)

查询结果集中的这些同义词都会报“ ORA-01775: 同义词的循环链问题”。

3.删除2中查询出的同义词

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值