In this above error you are trying to create a private synonym with the same name as the underlying object. You should use different name for the synonym to avoid this error. If really you want a synonym with the same name of the underlying object you can create a public synonym which will solve your issue.
- Public synonyms are accessible to all users in the database.
- Don’t create a public synonym with the same name as the exiting schema. In case if you do the same, all the PL/SQL units that use that name will be invalidated.
- If you create a public synonym and it subsequently has dependent tables or dependent valid user-defined object types, then you cannot create another database object of the same name as the synonym in the same schema as the dependent objects.