Thread: pgsql-server/ oc/src/sgml/ref/alter_table.sgml ...

pgsql-server/ oc/src/sgml/ref/alter_table.sgml ...

From
tgl@svr1.postgresql.org (Tom Lane)
Date:
CVSROOT:    /cvsroot
Module name:    pgsql-server
Changes by:    tgl@svr1.postgresql.org    04/05/05 01:48:48

Modified files:
    doc/src/sgml/ref: alter_table.sgml
    src/backend/bootstrap: bootparse.y
    src/backend/catalog: dependency.c heap.c index.c
    src/backend/commands: cluster.c indexcmds.c tablecmds.c
    src/backend/nodes: copyfuncs.c equalfuncs.c
    src/backend/parser: analyze.c gram.y
    src/backend/tcop: utility.c
    src/backend/utils/adt: ruleutils.c
    src/include/catalog: dependency.h heap.h index.h
    src/include/commands: cluster.h defrem.h tablecmds.h
    src/include/nodes: nodes.h parsenodes.h
    src/include/parser: analyze.h
    src/include/utils: builtins.h
    src/test/regress/expected: alter_table.out foreign_key.out
                               inherit.out
    src/test/regress/sql: alter_table.sql foreign_key.sql
                          inherit.sql

Log message:
    ALTER TABLE rewrite.  New cool stuff:

    * ALTER ... ADD COLUMN with defaults and NOT NULL constraints works per SQL
    spec.  A default is implemented by rewriting the table with the new value
    stored in each row.

    * ALTER COLUMN TYPE.  You can change a column's datatype to anything you
    want, so long as you can specify how to convert the old value.  Rewrites
    the table.  (Possible future improvement: optimize no-op conversions such
    as varchar(N) to varchar(N+1).)

    * Multiple ALTER actions in a single ALTER TABLE command.  You can perform
    any number of column additions, type changes, and constraint additions with
    only one pass over the table contents.

    Basic documentation provided in ALTER TABLE ref page, but some more docs
    work is needed.

    Original patch from Rod Taylor, additional work from Tom Lane.


Re: pgsql-server/ oc/src/sgml/ref/alter_table.sgml ...

From
Christopher Kings-Lynne
Date:
>     * ALTER COLUMN TYPE.  You can change a column's datatype to anything you
>     want, so long as you can specify how to convert the old value.  Rewrites
>     the table.  (Possible future improvement: optimize no-op conversions such
>     as varchar(N) to varchar(N+1).)

That seriously makes me a happy little camper!  Tell the world!

Chris