What is the difference between SYNONYM and ALIAS?
Answer Posted / venu
A table or view can be referred to in an SQL statement by
its name, by an alias that has been defined for its name, or
by a synonym that has been defined for its name. Thus,
aliases and synonyms can be thought of as alternate names
for tables and views.
An alias can be defined at a local server and can refer to a
table or view that is at the current server or a remote
server. The alias name can be used wherever the table name
or view name can be used to refer to the table or view in an
SQL statement
The differences between aliases and synonyms are as follows:
* SYSADM or SYSCTRL authority or the CREATE ALIAS
privilege is required to define an alias. No authorization
is required to define a synonym.
* An alias can be defined on the name of a table or
view, including tables and views that are not at the current
server. A synonym can only be defined on the name of a table
or view at the current server.
* An alias can be defined on an undefined name. A
synonym can only be defined on the name of an existing table
or view.
* Dropping a table or view has no effect on its aliases.
But dropping a table or view does drop its synonyms.
* An alias is a qualified name that can be used by any
authorization ID. A synonym is an unqualified name that can
only be used by the authorization ID that created it.
* An alias defined at one DB2 subsystem can be used at
another DB2 subsystem. A synonym can only be used at the DB2
subsystem where it is defined.
* When an alias is used, an error occurs if the name
that it designates is undefined or is the name of an alias
at the current server. (The alias can represent another
alias at a different server, which can represent yet another
alias at yet another server as long as eventually a
referenced alias represents a table or view.) When a synonym
is used, this error cannot occur.
| Is This Answer Correct ? | 15 Yes | 2 No |
Post New Answer View All Answers
How do you pull up a query which was previously saved in qmf?
what is the role of the cursor in db2?
For a db2 column that is being defined as decimal (11, 2), discuss the cobol picture clause.
What is host variable?
What is syscat in db2?
Who uses db2?
Is db2 a mainframe database?
Differentiate between cs and rr isolation levels? Where do you specify them?
How can you quickly find out the # of rows updated after an update statement?
List out the data types available.
What is db2 command?
Is it possible to alter a table – for example adding a column, when another user is accessing or updating some columns?
What is reorg and runstats in db2?
What is a buffer in memory?
How do we specify index to include or not during bind process.