diff options
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/ref/alter_table.sgml | 15 | ||||
-rw-r--r-- | doc/src/sgml/xfunc.sgml | 31 |
2 files changed, 44 insertions, 2 deletions
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index 6bc5ac54459..2d87902b2f4 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -1,5 +1,5 @@ <!-- -$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_table.sgml,v 1.38 2002/02/17 13:29:00 momjian Exp $ +$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_table.sgml,v 1.39 2002/03/05 05:33:04 momjian Exp $ PostgreSQL documentation --> @@ -31,6 +31,8 @@ ALTER TABLE [ ONLY ] <replaceable class="PARAMETER">table</replaceable> [ * ] ALTER TABLE [ ONLY ] <replaceable class="PARAMETER">table</replaceable> [ * ] ALTER [ COLUMN ] <replaceable class="PARAMETER">column</replaceable> SET STATISTICS <replaceable class="PARAMETER">integer</replaceable> ALTER TABLE [ ONLY ] <replaceable class="PARAMETER">table</replaceable> [ * ] + ALTER [ COLUMN ] <replaceable class="PARAMETER">column</replaceable> SET STORAGE {PLAIN | EXTERNAL | EXTENDED | MAIN} +ALTER TABLE [ ONLY ] <replaceable class="PARAMETER">table</replaceable> [ * ] RENAME [ COLUMN ] <replaceable class="PARAMETER">column</replaceable> TO <replaceable class="PARAMETER">newcolumn</replaceable> ALTER TABLE <replaceable class="PARAMETER">table</replaceable> @@ -169,6 +171,17 @@ ALTER TABLE <replaceable class="PARAMETER">table</replaceable> The <literal>ALTER COLUMN SET STATISTICS</literal> form allows you to set the statistics-gathering target for subsequent <xref linkend="sql-analyze" endterm="sql-analyze-title"> operations. + The <literal>ALTER COLUMN SET STORAGE</literal> form allows the + column storage mode to be set. This controls whether this column is + held inline or in a supplementary table, and whether the data + should be compressed or not. <literal>PLAIN</literal> must be used + for fixed-length values such as <literal>INTEGER</literal> and is + inline, uncompressed. <literal>MAIN</literal> is for inline, + compressible data. <literal>EXTERNAL</literal> is for external, + uncompressed data and <literal>EXTENDED</literal> is for external, + compressed data. The use of <literal>EXTERNAL</literal> will make + substring operations on a column faster, at the penalty of + increased storage space. The <literal>RENAME</literal> clause causes the name of a table, column, index, or sequence to change without changing any of the data. The data will remain of the same type and size after the diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml index 20341077c9c..94c664cbce1 100644 --- a/doc/src/sgml/xfunc.sgml +++ b/doc/src/sgml/xfunc.sgml @@ -1,5 +1,5 @@ <!-- -$Header: /cvsroot/pgsql/doc/src/sgml/xfunc.sgml,v 1.47 2002/01/20 22:19:56 petere Exp $ +$Header: /cvsroot/pgsql/doc/src/sgml/xfunc.sgml,v 1.48 2002/03/05 05:33:00 momjian Exp $ --> <chapter id="xfunc"> @@ -1297,6 +1297,35 @@ concat_text(PG_FUNCTION_ARGS) </para> <para> + Other options provided in the new-style interface are two + variants of the + <function>PG_GETARG_<replaceable>xxx</replaceable>()</function> + macros. The first of these, + <function>PG_GETARG_<replaceable>xxx</replaceable>_COPY()</function> + guarantees to return a copy of the specified parameter which is + safe for writing into. (The normal macros will sometimes return a + pointer to the value which must not be written to. Using the + <function>PG_GETARG_<replaceable>xxx</replaceable>_COPY()</function> + macros guarantees a writable result.) + </para> + + <para> + The second variant consists of the + <function>PG_GETARG_<replaceable>xxx</replaceable>_SLICE()</function> + macros which take three parameters. The first is the number of the + parameter (as above). The second and third are the offset and + length of the segment to be returned. Offsets are counted from + zero, and a negative length requests that the remainder of the + value be returned. These routines provide more efficient access to + parts of large values in the case where they have storage type + "external". (The storage type of a column can be specified using + <command>ALTER TABLE <repaceable>tablename</replaceable> ALTER + COLUMN <replaceable>colname</replaceable> SET STORAGE + <replaceable>storagetype</replaceable>. Storage type is one of + plain, external, extended or main.) + </para> + + <para> The version-1 function call conventions make it possible to return <quote>set</quote> results and implement trigger functions and procedural-language call handlers. Version-1 code is also more |