CREATE SYNONYM v13
Name
CREATE SYNONYM -- define a new synonym.
Synopsis
CREATE [OR REPLACE] [PUBLIC] SYNONYM [<schema>.]<syn_name>
FOR <object_schema>.<object_name>[@<dblink_name>];Description
CREATE SYNONYM defines a synonym for certain types of database objects. Advanced Server supports synonyms for:
- tables
- views
- materialized views
- sequences
- stored procedures
- stored functions
- types
- objects that are accessible through a database link
- other synonyms
Parameters
syn_name
syn_name is the name of the synonym. A synonym name must be unique within a schema.
schema
schema specifies the name of the schema that the synonym resides in. If you do not specify a schema name, the synonym is created in the first existing schema in your search path.
object_name
object_name specifies the name of the object.
object_schema
object_schema specifies the name of the schema that the referenced object resides in.
dblink_name
dblink_name specifies the name of the database link through which an object is accessed.
Include the REPLACE clause to replace an existing synonym definition with a new synonym definition.
Include the PUBLIC clause to create the synonym in the public schema. The CREATE PUBLIC SYNONYM command, compatible with Oracle databases, creates a synonym that resides in the public schema:
CREATE [OR REPLACE] PUBLIC SYNONYM <syn_name> FOR <object_schema>.<object_name>;
This just a shorthand way to write:
CREATE [OR REPLACE] SYNONYM public.<syn_name> FOR <object_schema>.<object_name>;
Notes
Access to the object referenced by the synonym is determined by the permissions of the current user of the synonym; the synonym user must have the appropriate permissions on the underlying database object.
Examples
Create a synonym for the emp table in a schema named, enterprisedb:
CREATE SYNONYM personnel FOR enterprisedb.emp;
See Also