privilege on the ORDERS table to the user HR.
Which statement would create a synonym ORD so that HR can execute the
following query successfully?
SELECT * FROM ord;
A. CREATE SYNONYM ord FOR orders; This command is issued by OE.
B. CREATE PUBLIC SYNONYM ord FOR orders; This command is issued by OE.
C. CREATE SYNONYM ord FOR oe.orders; This command is issued by the database
administrator.
D. CREATE PUBLIC SYNONYM ord FOR oe.orders; This command is issued by the
database administrator.
Answer: D
解析:
创建同义词:
To create a private synonym in your own schema, you must have the CREATE SYNONYM
privilege. To create a private synonym in another user's schema, you must have the CREATE ANY SYNONYM
privilege. To create a public synonym, you must have the CREATE PUBLIC SYNONYM
system privilege.
在hr有访问 OE.orders 表的权限条件下:
如果OE用户有创建私有和公有同义词的权限,则B,D都能正常访问;
A public synonym is owned by the special user group named PUBLIC
and is accessible to every user in a database.
A private synonym is contained in the schema of a specific user and available only to the user and the user's grantees.
私有同义词对其他用户访问需要授权;
如果执行的语句是select * from oe.ord 则A,B正确