Enterprise Edition Home | Express Edition Home | Previous Page | Next Page   SQL Statements > GRANT FRAGMENT >

Definition of Fragment-Level Authorization

In an ANSI-compliant database, the owner implicitly receives all table-level privileges on a newly created table, but no other users receive privileges.

A user who has table privileges on a fragmented table has the privileges implicitly on all fragments of the table. These privileges are not recorded in the sysfragauth system catalog table.

When a fragmented table is created in a database that is not ANSI compliant, the table owner implicitly receives all table-level privileges on the table, and other users (that is, PUBLIC) receive all fragment-level privileges by default. The privileges granted to PUBLIC are explicitly recorded in the systabauth system catalog table.

If you use the REVOKE statement to withdraw existing table-level privileges, however, you can then use the GRANT FRAGMENT statement to restore specified table-level privileges to users, roles, or PUBLIC on some subset of the fragments.

Whether or not the database is ANSI compliant, you can use the GRANT FRAGMENT statement to grant explicit Insert, Update, and Delete privileges on one or more fragments of a table that is fragmented by expression. The privileges that the GRANT FRAGMENT statement grants are explicitly recorded in the sysfragauth system catalog table.

The Insert, Update, and Delete privileges that are conferred on table fragments by the GRANT FRAGMENT statement are collectively known as fragment-level privileges or fragment-level authority.

Enterprise Edition Home | Express Edition Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]