Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 数据库管理 » 配置数据库 » 管理用户 ID、特权和权限 » 管理组

 

引用组拥有的表

组可以用于查找数据库中的表和过程。例如,以下查询总会找到视图 SYS.SYSGROUPS,因为所有用户都属于 PUBLIC 组,而 PUBLIC 组又属于拥有 SYSGROUPS 视图的 SYS 组:

SELECT * FROM SYSGROUPS;

SYSGROUPS 视图包含 group_namemember_name 对的列表,这些对表示数据库中的组成员资格。

如果名为 employees 的表归用户 ID personnel 所有,且 M_Haneef 是 personnel 组的成员,则 M_Haneef 可在 SQL 语句中将 employees 表简单地称为 employees。不是 personnel 组成员的用户需要使用限定名称 personnel.employees。

创建一个要拥有表的组

若要允许每个人在访问表时都无需使用限定名称,最好是创建一个专用来拥有这些表的组。不为该组授予任何权限,但让所有用户都成为该组的成员。然后,您可以创建权限组,并在确有必要时为用户授予这些权限组中的成员资格。

如果用户拥有的表与组拥有的表名称相同,则非限定表名将表示用户拥有的表,而非组拥有的表。同样,如果用户属于多个拥有同名表的组,则用户必须限定表名。

请参见数据库对象名和前缀