diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c
index 954ce42b684e656e40c1b0b8d9a452a41d417fae..b4fa7df81dc16938538c8058e09f144be7b3db99 100644
--- a/src/bin/psql/describe.c
+++ b/src/bin/psql/describe.c
@@ -8,7 +8,7 @@
  *
  * Copyright (c) 2000-2010, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.242 2010/07/06 19:18:59 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.243 2010/08/01 01:08:29 rhaas Exp $
  */
 #include "postgres_fe.h"
 
@@ -1592,7 +1592,12 @@ describeOneTableDetails(const char *schemaname,
 						if (strcmp(PQgetvalue(result, i, 1), "t") == 0)
 							appendPQExpBuffer(&buf, " PRIMARY KEY,");
 						else if (strcmp(PQgetvalue(result, i, 2), "t") == 0)
-							appendPQExpBuffer(&buf, " UNIQUE,");
+						{
+							if (strcmp(PQgetvalue(result, i, 7), "u") == 0)
+								appendPQExpBuffer(&buf, " UNIQUE CONSTRAINT,");
+							else
+								appendPQExpBuffer(&buf, " UNIQUE,");
+						}
 
 						/* Everything after "USING" is echoed verbatim */
 						indexdef = PQgetvalue(result, i, 5);
diff --git a/src/test/regress/expected/typed_table.out b/src/test/regress/expected/typed_table.out
index 8bb9a1dd6a7f0eca907f382dd1f261d2d8974989..6db8d4c803158a97e83022147dfd1a06e2fa3e9f 100644
--- a/src/test/regress/expected/typed_table.out
+++ b/src/test/regress/expected/typed_table.out
@@ -55,7 +55,7 @@ NOTICE:  CREATE TABLE / UNIQUE will create implicit index "persons2_name_key" fo
  name   | text    | 
 Indexes:
     "persons2_pkey" PRIMARY KEY, btree (id)
-    "persons2_name_key" UNIQUE, btree (name)
+    "persons2_name_key" UNIQUE CONSTRAINT, btree (name)
 Typed table of type: person_type
 
 CREATE TABLE persons3 OF person_type (