Consider a scenario where you have two databases: On database A you need to access data on database B.

You could create a view on database A that selects from the table on database B.

CREATE OR REPLACE VIEW Demographics.Employees(
employee_id, employee_dept
    SELECT employee_id, employee_dept
    FROM Employee@DB_B;

Or, you could create a synonym on database A that points to the table on database B.

CREATE OR REPLACE SYNONYM Demographics.Employees FOR Employee@DB_B;

What are the advantages and disadvantage to using a view across the DB link versus a synonym across the DB link?

If the databases are within an Exadata platform, does that change the recommendation?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.