]> granicus.if.org Git - postgresql/commitdiff
Add an example of attaching a default value to an updatable view.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 9 Feb 2013 16:43:48 +0000 (11:43 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 9 Feb 2013 16:43:48 +0000 (11:43 -0500)
This is probably the single most useful thing that ALTER VIEW can do,
particularly now that we have auto-updatable views.  So show an explicit
example.

doc/src/sgml/ref/alter_view.sgml

index 0e2b140241e3ada358795f6bd2a1f9520d0b8088..55674c650a98b43afecee64b2c37edb1f8a50838 100644 (file)
@@ -154,7 +154,19 @@ ALTER VIEW [ IF EXISTS ] <replaceable class="parameter">name</replaceable> RESET
    <literal>bar</literal>:
 <programlisting>
 ALTER VIEW foo RENAME TO bar;
-</programlisting></para>
+</programlisting>
+  </para>
+
+  <para>
+   To attach a default column value to an updatable view:
+<programlisting>
+CREATE TABLE base_table (id int, ts timestamptz);
+CREATE VIEW a_view AS SELECT * FROM base_table;
+ALTER VIEW a_view ALTER COLUMN ts SET DEFAULT now();
+INSERT INTO base_table(id) VALUES(1);  -- ts will receive a NULL
+INSERT INTO a_view(id) VALUES(2);  -- ts will receive the current time
+</programlisting>
+  </para>
  </refsect1>
 
  <refsect1>