1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-17 06:41:09 +03:00

Correct ALTER TYPE -> SET DATA TYPE in ALTER TABLE documentation.

The latter is the correct name of the operation to change the data type
of a column.

Noah Misch
This commit is contained in:
Robert Haas
2011-01-25 18:50:35 -05:00
parent 39b5e5f337
commit 2c3e292998

View File

@ -719,7 +719,7 @@ ALTER TABLE <replaceable class="PARAMETER">name</replaceable>
</para>
<para>
The fact that <literal>ALTER TYPE</> requires rewriting the whole table
The fact that <literal>SET DATA TYPE</> requires rewriting the whole table
is sometimes an advantage, because the rewriting process eliminates
any dead space in the table. For example, to reclaim the space occupied
by a dropped column immediately, the fastest way is:
@ -734,15 +734,15 @@ ALTER TABLE table ALTER COLUMN anycol TYPE anytype;
</para>
<para>
The <literal>USING</literal> option of <literal>ALTER TYPE</> can actually
The <literal>USING</literal> option of <literal>SET DATA TYPE</> can actually
specify any expression involving the old values of the row; that is, it
can refer to other columns as well as the one being converted. This allows
very general conversions to be done with the <literal>ALTER TYPE</>
very general conversions to be done with the <literal>SET DATA TYPE</>
syntax. Because of this flexibility, the <literal>USING</literal>
expression is not applied to the column's default value (if any); the
result might not be a constant expression as required for a default.
This means that when there is no implicit or assignment cast from old to
new type, <literal>ALTER TYPE</> might fail to convert the default even
new type, <literal>SET DATA TYPE</> might fail to convert the default even
though a <literal>USING</literal> clause is supplied. In such cases,
drop the default with <literal>DROP DEFAULT</>, perform the <literal>ALTER
TYPE</>, and then use <literal>SET DEFAULT</> to add a suitable new