diff options
| author | Bruce Momjian <bruce@momjian.us> | 2003-05-26 19:25:20 +0000 | 
|---|---|---|
| committer | Bruce Momjian <bruce@momjian.us> | 2003-05-26 19:25:20 +0000 | 
| commit | 90903069e97ab686a5dea96bcd2fb11e73bcdc91 (patch) | |
| tree | 097bde2e428e28b367a7636c974c5ca51bc16fe3 /doc/src/FAQ | |
| parent | 6923ea2b861945fdd5b39bffe081ae450c33e8b1 (diff) | |
Add item for changing a column's data type.
Diffstat (limited to 'doc/src/FAQ')
| -rw-r--r-- | doc/src/FAQ/FAQ.html | 19 | 
1 files changed, 15 insertions, 4 deletions
| diff --git a/doc/src/FAQ/FAQ.html b/doc/src/FAQ/FAQ.html index 33ba50b2597..c63696aa587 100644 --- a/doc/src/FAQ/FAQ.html +++ b/doc/src/FAQ/FAQ.html @@ -10,7 +10,7 @@    alink="#0000ff">      <H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1> -    <P>Last updated: Tue Apr 22 14:02:41 EDT 2003</P> +    <P>Last updated: Mon May 26 15:25:04 EDT 2003</P>      <P>Current maintainer: Bruce Momjian (<A href=      "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR> @@ -87,7 +87,7 @@       <A href="#4.3">4.3</A>) How do I get a list of tables or other      things I can see in <I>psql</I>?<BR>       <A href="#4.4">4.4</A>) How do you remove a column from a -    table?<BR> +    table, or change it's data type?<BR>       <A href="#4.5">4.5</A>) What is the maximum size for a row, a      table, and a database?<BR>       <A href="#4.6">4.6</A>) How much database disk space is required @@ -822,9 +822,9 @@      execute the commands you give.</P>      <H4><A name="4.4">4.4</A>) How do you remove a column from a -    table?</H4> +    table, or change its data type?</H4> -    <P>This functionality was added in release 7.3 with +    <P><SMALL>DROP COLUMN</SMALL> functionality was added in release 7.3 with      <SMALL>ALTER TABLE DROP COLUMN</SMALL>.  In earlier versions,      you can do this:</P>  <PRE> @@ -838,6 +838,17 @@      COMMIT;  </PRE> +    <P>To change the data type of a column, do this:</P> +<PRE> +    BEGIN; +    ALTER TABLE tab ADD COLUMN new_col <i>new_data_type</i>; +    UPDATE tab SET new_col = CAST(old_col AS <i>new_data_type</i>); +    ALTER TABLE DROP COLUMN old_col; +    COMMIT; +</PRE> +    <P>You might then want to do <I>VACUUM FULL tab</I> to reclaim the +    disk space used by the expired rows.</P> +          <H4><A name="4.5">4.5</A>) What is the maximum size for a row, a      table, and a database?</H4> | 
