Skip to Main Content
  • Questions
  • ORA-00980 translation is no longer valid

Breadcrumb

Question and Answer

Chris Saxon

Thanks for the question, joel.

Asked: July 26, 2016 - 10:19 am UTC

Last updated: July 28, 2016 - 7:40 pm UTC

Version: 11.2.0

Viewed 1000+ times

You Asked

Dear Sir,

I am exporting a database from one system and importing it in another system. after importing its shows the error ORA-00980 tranlation is no longer valid everywhere i can see the solution but my question is

1)its working well with with the previous system why after importing its showing error?
2)i dont want to solve the problem after importing and when it throws exception instead i want don't want this problem to arise
3)after importing i have to again create schema and synonym is there a way to solve it

so after importing it should work perfectly without throwing exception

can you please help me sir?

and Chris said...

ORA-980 happens when a synonym points to an object that isn't in your database!

For example:

SQL> create table t (
  2    x int
  3  );

Table created.

SQL>
SQL> create synonym s for chris.t;

Synonym created.

SQL>
SQL> select * from s;

no rows selected

SQL>
SQL> drop table t purge;

Table dropped.

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


So my guess is that the import doesn't include whatever the target of your synonyms are. Probably because they are in a different schema!

You can find which synonyms are missing their target with the following query:

select * from user_synonyms s
where  not exists (
  select * from dba_objects d
  where  s.table_owner = d.owner
  and    s.table_name = d.object_name
);

SYNONYM_NAME  TABLE_OWNER  TABLE_NAME  DB_LINK  
S             CHRIS        T 


Is this answer out of date? If it is, please let us know via a Comment