OK, NO ACTION (the default) no longer prints for foreign key constraints:
Advertising
regression=> \d clstr_tst
Table "public.clstr_tst"
Column | Type | Modifiers
--------+---------+----------------------------------------------------------
a | integer | not null default nextval('public.clstr_tst_a_seq'::text)
b | integer |
c | text |
d | text |
Indexes: clstr_tst_pkey primary key btree (a),
clstr_tst_b btree (b),
clstr_tst_b_c btree (b, c),
clstr_tst_c btree (c),
clstr_tst_c_b btree (c, b)
Foreign Key constraints: clstr_tst_con FOREIGN KEY (b) REFERENCES
clstr_tst_s(rf_a)
---------------------------------------------------------------------------
Christopher Kings-Lynne wrote:
> I vote for not showing 'NO ACTION', so long as it's the SQL standard
> default...
>
> Chris
>
> On Sat, 18 Jan 2003, Bruce Momjian wrote:
>
> > Remember how we made DEFERRABLE/DEFERRED not print if the constraint was
> > the default. Shouldn't we do the same for MATCH and ON UPDATE/ON DELETE
> > sections of the constraint in pg_get_constraintdef()?
> >
> > Doing \d I see:
> >
> > test=> \d sales
> > Table "public.sales"
> > Column | Type | Modifiers
> > -------------------+---------+-----------
> > product_id | integer | not null
> > store_id | integer | not null
> > quantity_sold | integer | not null
> > date_time_of_sale | date | not null
> > Foreign Key constraints: $1 FOREIGN KEY (product_id) REFERENCES
> > products(product_id) ON UPDATE NO ACTION ON DELETE NO ACTION,
> > $2 FOREIGN KEY (store_id) REFERENCES
> > stores(store_id) ON UPDATE NO ACTION ON DELETE NO ACTION
> >
> > If NO ACTION is the default, is there a need to print them? This would
> > also shorten pg_dump output.
> >
> > --
> > Bruce Momjian | http://candle.pha.pa.us
> > [EMAIL PROTECTED] | (610) 359-1001
> > + If your life is a hard drive, | 13 Roberts Road
> > + Christ can be your backup. | Newtown Square, Pennsylvania 19073
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 2: you can get off all lists at once with the unregister command
> > (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
> >
>
>
--
Bruce Momjian | http://candle.pha.pa.us
[EMAIL PROTECTED] | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
Index: src/backend/utils/adt/ruleutils.c
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/adt/ruleutils.c,v
retrieving revision 1.132
diff -c -c -r1.132 ruleutils.c
*** src/backend/utils/adt/ruleutils.c 10 Jan 2003 21:08:15 -0000 1.132
--- src/backend/utils/adt/ruleutils.c 3 Feb 2003 14:57:33 -0000
***************
*** 642,648 ****
switch (conForm->confupdtype)
{
case FKCONSTR_ACTION_NOACTION:
! string = "NO ACTION";
break;
case FKCONSTR_ACTION_RESTRICT:
string = "RESTRICT";
--- 642,648 ----
switch (conForm->confupdtype)
{
case FKCONSTR_ACTION_NOACTION:
! string = "";
break;
case FKCONSTR_ACTION_RESTRICT:
string = "RESTRICT";
***************
*** 662,673 ****
string = ""; /* keep compiler quiet
*/
break;
}
! appendStringInfo(&buf, " ON UPDATE %s", string);
switch (conForm->confdeltype)
{
case FKCONSTR_ACTION_NOACTION:
! string = "NO ACTION";
break;
case FKCONSTR_ACTION_RESTRICT:
string = "RESTRICT";
--- 662,674 ----
string = ""; /* keep compiler quiet
*/
break;
}
! if (strlen(string) != 0)
! appendStringInfo(&buf, " ON UPDATE %s",
string);
switch (conForm->confdeltype)
{
case FKCONSTR_ACTION_NOACTION:
! string = "";
break;
case FKCONSTR_ACTION_RESTRICT:
string = "RESTRICT";
***************
*** 687,693 ****
string = ""; /* keep compiler quiet
*/
break;
}
! appendStringInfo(&buf, " ON DELETE %s", string);
if (conForm->condeferrable)
appendStringInfo(&buf, " DEFERRABLE");
--- 688,695 ----
string = ""; /* keep compiler quiet
*/
break;
}
! if (strlen(string) != 0)
! appendStringInfo(&buf, " ON DELETE %s",
string);
if (conForm->condeferrable)
appendStringInfo(&buf, " DEFERRABLE");
---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly