]> granicus.if.org Git - postgresql/commit
New \d format:
authorBruce Momjian <bruce@momjian.us>
Thu, 27 Mar 2003 16:57:39 +0000 (16:57 +0000)
committerBruce Momjian <bruce@momjian.us>
Thu, 27 Mar 2003 16:57:39 +0000 (16:57 +0000)
commitc75d65485d1025c6ec62044e46ac74d467f1243b
tree35635816d760c8c43462f8fa3c5af991c73969de
parent5e8499d995679f6d8e4519da816ba14eb8d7396f
New \d format:

Example:

test=# \d test
     Table "public.test"
 Column |  Type   | Modifiers
--------+---------+-----------
 a      | integer | not null
Indexes:
    "test_pkey" PRIMARY KEY btree (a)
Check Constraints:
    "$2" CHECK (a > 1)
Foreign Key Constraints:
    "$1" FOREIGN KEY (a) REFERENCES parent(b)
Rules:
    myrule AS ON INSERT TO test DO INSTEAD NOTHING
Triggers:
    "asdf asdf" AFTER INSERT OR DELETE ON test FOR EACH STATEMENT EXECUTE
PROCEDURE update_pg_pwd_and_pg_group(),
    mytrigger AFTER INSERT OR DELETE ON test FOR EACH ROW EXECUTE PROCEDURE
update_pg_pwd_and_pg_group()

I have minimised the double quoting of identifiers as much as I could
easily, and I will submit another patch when I have time to work on it that
will use a 'fmtId' function to determine it exactly.

I think it's a significant improvement in legibility...

Obviously the table example above is slightly degenerate in that not many
tables in production have heaps of (non-constraint) triggers and rules.

Christopher Kings-Lynne
src/bin/psql/describe.c