ORA-00980: 同义词转换不再有效

本文探讨了在Oracle数据库中遇到的ORA-00980错误:同义词转换不再有效的问题。主要介绍了该错误产生的原因,通常是在创建同义词时指向的对象不存在或无法访问导致。文章通过实例说明了如何避免此错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    当查找一个数据库的对象的时候,可能出现这个错误:ORA-00980: 同义词转换不再有效.

    产生这个错误的对象时个同义词,出现这个错误的原因90%是因为创建语句有问题,一定先检查创建语句是否正确。

    因为创建同义词的时候,它不会去校验你创建的同义词指向的东西是否存在,只有在访问这个同义词的时候才去直接找这个对象。

    如果这个对象不存在,或无法访问,就会报这个错误。

    可能是创建的时候指定的db link有问题,也可能指向的对象有问题。

看下面的例子:

SQL> create synonym test_synonym for gw.abc;

Synonym created.

SQL> select * from test_synonym;
select * from test_synonym
              *
ERROR at line 1:
ORA-00980: synonym translation is no longer valid

在对象gw下面,根本没有abc这张表,但是创建的时候没检查,使用的时候才检查,报错了。

如需转载,请注明出处:http://blog.csdn.net/nanaranran/article/details/18548949

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值