|
8 | 8 | *
|
9 | 9 | * Copyright (c) 2000-2010, PostgreSQL Global Development Group
|
10 | 10 | *
|
11 |
| - * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.239 2010/03/01 20:55:45 heikki Exp $ |
| 11 | + * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.240 2010/03/11 04:36:43 tgl Exp $ |
12 | 12 | */
|
13 | 13 | #include"postgres_fe.h"
|
14 | 14 |
|
@@ -1417,21 +1417,17 @@ describeOneTableDetails(const char *schemaname,
|
1417 | 1417 | if (pset.sversion >=90000)
|
1418 | 1418 | appendPQExpBuffer(&buf,
|
1419 | 1419 | " (NOT i.indimmediate) AND "
|
1420 |
| -"EXISTS (SELECT 1 FROM pg_catalog.pg_depend d, " |
1421 |
| -"pg_catalog.pg_constraint con WHERE " |
1422 |
| -"d.classid = 'pg_catalog.pg_class'::pg_catalog.regclass AND " |
1423 |
| -"d.objid = i.indexrelid AND " |
1424 |
| -"d.refclassid = 'pg_catalog.pg_constraint'::pg_catalog.regclass AND " |
1425 |
| -"d.refobjid = con.oid AND d.deptype = 'i' AND " |
1426 |
| -"con.condeferrable) AS condeferrable,\n" |
| 1420 | +"EXISTS (SELECT 1 FROM pg_catalog.pg_constraint " |
| 1421 | +"WHERE conrelid = i.indrelid AND " |
| 1422 | +"conindid = i.indexrelid AND " |
| 1423 | +"contype IN ('p','u','x') AND " |
| 1424 | +"condeferrable) AS condeferrable,\n" |
1427 | 1425 | " (NOT i.indimmediate) AND "
|
1428 |
| -"EXISTS (SELECT 1 FROM pg_catalog.pg_depend d, " |
1429 |
| -"pg_catalog.pg_constraint con WHERE " |
1430 |
| -"d.classid = 'pg_catalog.pg_class'::pg_catalog.regclass AND " |
1431 |
| -"d.objid = i.indexrelid AND " |
1432 |
| -"d.refclassid = 'pg_catalog.pg_constraint'::pg_catalog.regclass AND " |
1433 |
| -"d.refobjid = con.oid AND d.deptype = 'i' AND " |
1434 |
| -"con.condeferred) AS condeferred,\n"); |
| 1426 | +"EXISTS (SELECT 1 FROM pg_catalog.pg_constraint " |
| 1427 | +"WHERE conrelid = i.indrelid AND " |
| 1428 | +"conindid = i.indexrelid AND " |
| 1429 | +"contype IN ('p','u','x') AND " |
| 1430 | +"condeferred) AS condeferred,\n"); |
1435 | 1431 | else
|
1436 | 1432 | appendPQExpBuffer(&buf,
|
1437 | 1433 | " false AS condeferrable, false AS condeferred,\n");
|
@@ -1553,21 +1549,17 @@ describeOneTableDetails(const char *schemaname,
|
1553 | 1549 | if (pset.sversion >=90000)
|
1554 | 1550 | appendPQExpBuffer(&buf,
|
1555 | 1551 | ",\n (NOT i.indimmediate) AND "
|
1556 |
| -"EXISTS (SELECT 1 FROM pg_catalog.pg_depend d, " |
1557 |
| -"pg_catalog.pg_constraint con WHERE " |
1558 |
| -"d.classid = 'pg_catalog.pg_class'::pg_catalog.regclass AND " |
1559 |
| -"d.objid = i.indexrelid AND " |
1560 |
| -"d.refclassid = 'pg_catalog.pg_constraint'::pg_catalog.regclass AND " |
1561 |
| -"d.refobjid = con.oid AND d.deptype = 'i' AND " |
1562 |
| -"con.condeferrable) AS condeferrable" |
| 1552 | +"EXISTS (SELECT 1 FROM pg_catalog.pg_constraint " |
| 1553 | +"WHERE conrelid = i.indrelid AND " |
| 1554 | +"conindid = i.indexrelid AND " |
| 1555 | +"contype IN ('p','u','x') AND " |
| 1556 | +"condeferrable) AS condeferrable" |
1563 | 1557 | ",\n (NOT i.indimmediate) AND "
|
1564 |
| -"EXISTS (SELECT 1 FROM pg_catalog.pg_depend d, " |
1565 |
| -"pg_catalog.pg_constraint con WHERE " |
1566 |
| -"d.classid = 'pg_catalog.pg_class'::pg_catalog.regclass AND " |
1567 |
| -"d.objid = i.indexrelid AND " |
1568 |
| -"d.refclassid = 'pg_catalog.pg_constraint'::pg_catalog.regclass AND " |
1569 |
| -"d.refobjid = con.oid AND d.deptype = 'i' AND " |
1570 |
| -"con.condeferred) AS condeferred"); |
| 1558 | +"EXISTS (SELECT 1 FROM pg_catalog.pg_constraint " |
| 1559 | +"WHERE conrelid = i.indrelid AND " |
| 1560 | +"conindid = i.indexrelid AND " |
| 1561 | +"contype IN ('p','u','x') AND " |
| 1562 | +"condeferred) AS condeferred"); |
1571 | 1563 | else
|
1572 | 1564 | appendPQExpBuffer(&buf,", false AS condeferrable, false AS condeferred");
|
1573 | 1565 | if (pset.sversion >=80000)
|
|