|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /proc/self/root/usr/share/doc/postgresql-8.1.9/html/ |
Upload File : |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>column_privileges</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REV="MADE"
HREF="mailto:pgsql-docs@postgresql.org"><LINK
REL="HOME"
TITLE="PostgreSQL 8.1.9 Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="The Information Schema"
HREF="information-schema.html"><LINK
REL="PREVIOUS"
TITLE="column_domain_usage"
HREF="infoschema-column-domain-usage.html"><LINK
REL="NEXT"
TITLE="column_udt_usage"
HREF="infoschema-column-udt-usage.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="stylesheet.css"><META
HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=ISO-8859-1"><META
NAME="creation"
CONTENT="2007-04-20T04:40:08"></HEAD
><BODY
CLASS="SECT1"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="5"
ALIGN="center"
VALIGN="bottom"
>PostgreSQL 8.1.9 Documentation</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="infoschema-column-domain-usage.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="information-schema.html"
>Fast Backward</A
></TD
><TD
WIDTH="60%"
ALIGN="center"
VALIGN="bottom"
>Chapter 31. The Information Schema</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="top"
><A
HREF="information-schema.html"
>Fast Forward</A
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="top"
><A
HREF="infoschema-column-udt-usage.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="INFOSCHEMA-COLUMN-PRIVILEGES"
>31.7. <TT
CLASS="LITERAL"
>column_privileges</TT
></A
></H1
><P
> The view <TT
CLASS="LITERAL"
>column_privileges</TT
> identifies all
privileges granted on columns to the current user or by the current
user. There is one row for each combination of column, grantor,
and grantee. Privileges granted to groups are identified in the
view <TT
CLASS="LITERAL"
>role_column_grants</TT
>.
</P
><P
> In <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
>, you can only grant
privileges on entire tables, not individual columns. Therefore,
this view contains the same information as
<TT
CLASS="LITERAL"
>table_privileges</TT
>, just represented through one
row for each column in each appropriate table, but it only covers
privilege types where column granularity is possible:
<TT
CLASS="LITERAL"
>SELECT</TT
>, <TT
CLASS="LITERAL"
>INSERT</TT
>,
<TT
CLASS="LITERAL"
>UPDATE</TT
>, <TT
CLASS="LITERAL"
>REFERENCES</TT
>. If you
want to make your applications fit for possible future
developments, it is generally the right choice to use this view
instead of <TT
CLASS="LITERAL"
>table_privileges</TT
> if one of those
privilege types is concerned.
</P
><DIV
CLASS="TABLE"
><A
NAME="AEN28266"
></A
><P
><B
>Table 31-5. <TT
CLASS="LITERAL"
>column_privileges</TT
> Columns</B
></P
><TABLE
BORDER="1"
CLASS="CALSTABLE"
><COL><COL><COL><THEAD
><TR
><TH
>Name</TH
><TH
>Data Type</TH
><TH
>Description</TH
></TR
></THEAD
><TBODY
><TR
><TD
><TT
CLASS="LITERAL"
>grantor</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the user that granted the privilege</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>grantee</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the user or group that the privilege was granted to</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>table_catalog</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the database that contains the table that contains the column (always the current database)</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>table_schema</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the schema that contains the table that contains the column</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>table_name</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the table that contains the column</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>column_name</TT
></TD
><TD
><TT
CLASS="TYPE"
>sql_identifier</TT
></TD
><TD
>Name of the column</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>privilege_type</TT
></TD
><TD
><TT
CLASS="TYPE"
>character_data</TT
></TD
><TD
> Type of the privilege: <TT
CLASS="LITERAL"
>SELECT</TT
>,
<TT
CLASS="LITERAL"
>INSERT</TT
>, <TT
CLASS="LITERAL"
>UPDATE</TT
>, or
<TT
CLASS="LITERAL"
>REFERENCES</TT
>
</TD
></TR
><TR
><TD
><TT
CLASS="LITERAL"
>is_grantable</TT
></TD
><TD
><TT
CLASS="TYPE"
>character_data</TT
></TD
><TD
><TT
CLASS="LITERAL"
>YES</TT
> if the privilege is grantable, <TT
CLASS="LITERAL"
>NO</TT
> if not</TD
></TR
></TBODY
></TABLE
></DIV
><P
> Note that the column <TT
CLASS="LITERAL"
>grantee</TT
> makes no
distinction between users and groups. If you have users and groups
with the same name, there is unfortunately no way to distinguish
them. A future version of <SPAN
CLASS="PRODUCTNAME"
>PostgreSQL</SPAN
>
will possibly prohibit having users and groups with the same name.
</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="infoschema-column-domain-usage.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="infoschema-column-udt-usage.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><TT
CLASS="LITERAL"
>column_domain_usage</TT
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="information-schema.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><TT
CLASS="LITERAL"
>column_udt_usage</TT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>