每个数据库对象的名称都是一个标识符。
有关有效标识符规则的信息,请参见标识符。
在本手册的所有查询和示例 SQL 语句中,提及示例数据库中的数据库对象时,通常采用的是它们的简单名称。例如:
SELECT * FROM Employees; |
表、过程和视图都有所有者。DBA 用户 ID 拥有示例数据库中的表。在某些情况下,必须使用所有者用户 ID 作为对象名的前缀,如以下语句所示。
SELECT * FROM DBA.Employees; |
Employees 表引用被称为限定表引用。在其它情况下,给出对象名即已足够。本节介绍了何时需要或不需要使用所有者前缀来标识表、视图和过程。
当引用数据库对象时,除以下情况外需要使用前缀:
您是数据库对象的所有者。
您是拥有数据库对象的组 ID 的成员。
Joe 和 Sally 是 company 组的成员,但他们没有任何额外的权限。company 组没有被明确授予任何表权限。(company 用户 ID 拥有查看诸如 Salaries 之类的表的隐式权限,因为该 ID 创建了该表并具有 DBA 特权。)因此,Joe 和 Sally 在执行以下命令之一时仍会遇到错误:
SELECT * FROM Salaries; SELECT * FROM company.Salaries; |
在这两种情况下,Joe 和 Sally 都没有查看 Salaries 表的权限。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |