PostgreSQL 8.3.1 Documentation
Prev | Fast Backward | Chapter 33. The Information Schema | Fast Forward | Next

# 33.10. `column_privileges`

The view `column_privileges` identifies all privileges granted on columns to a currently enabled role or by a currently enabled role. There is one row for each combination of column, grantor, and grantee.

In PostgreSQL, you can only grant privileges on entire tables, not individual columns. Therefore, this view contains the same information as `table_privileges`, just represented through one row for each column in each appropriate table, but it only covers privilege types where column granularity is possible: `SELECT`, `INSERT`, `UPDATE`, `REFERENCES`. If you want to make your applications fit for possible future developments, it is generally the right choice to use this view instead of `table_privileges` if one of those privilege types is concerned.

Table 33-8. `column_privileges` Columns

Name | Data Type | Description
--- | --- | ---
`grantor` | `sql_identifier` | Name of the role that granted the privilege
`grantee` | `sql_identifier` | Name of the role that the privilege was granted to
`table_catalog` | `sql_identifier` | Name of the database that contains the table that contains the column (always the current database)
`table_schema` | `sql_identifier` | Name of the schema that contains the table that contains the column
`table_name` | `sql_identifier` | Name of the table that contains the column
`column_name` | `sql_identifier` | Name of the column
`privilege_type` | `character_data` | Type of the privilege: `SELECT`, `INSERT`, `UPDATE`, or `REFERENCES`
`is_grantable` | `character_data` | `YES` if the privilege is grantable, `NO` if not

Prev | Home | Next
`column_domain_usage` | Up | `column_udt_usage`