对违反表的初始权限

当您发出 START VIOLATIONS TABLE 语句来创建违反表时,数据库服务器使用在目标表上授予的权限集作为对违反表授予权限的基础。然而,当数据库服务器授予每一权限类别时,它遵循不同的规则。

下表汇总数据库服务器在其下对违反表授予的每一类权限的环境。
权限
授予该权限的条件
Alter
未在违反表上授予 Alter 权限。(用户不可更改违反表。)
Index
如果用户在目标表上有 Index 权限,则用户在违反表上有 Index 权限。
Insert
如果用户在目标表的任何列上有 Insert、Delete 或 Update 权限,则用户在违反表上有 Insert 权限。
Delete
如果用户在目标表的任何列上有 Insert、Delete 或 Update 权限,则用户在违反表上有 Delete 权限。
Select
如果用户在目标表的任何列上有 Select 权限,则用户在违反表的 gbasedbt_tupleidgbasedbt_optypegbasedbt_recowner 列上有 Select 权限。

如果用户在目标表中同一列上有 Select 权限,则用户在违反表的任何其他列上有 Select 权限。

Update
如果用户在目标表的任何列上有 Update 权限,则用户在违反表的 gbasedbt_tupleidgbasedbt_optypegbasedbt_recowner 列上有 Update 权限。

(然而,即使在 gbasedbt_tupleid 列上带有 Update 权限,用户也不可更新此 SERIAL 列。)

如果用户在目标表中的同一列上有 Update 权限,则用户在任何其他的违反表列上有 Update 权限。

References
不在违反表上授予 References 权限。(用户不可将引用约束添加到违反表。)
下列规则适用于违反表的所有者和违反表上的权限: