summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorTom Lane2002-04-25 02:56:56 +0000
committerTom Lane2002-04-25 02:56:56 +0000
commit52200befd04b9fa71da83231c808764867079226 (patch)
treedff69a6e149b5e8309f235942ab39c58c8bfc95d /contrib
parent4eac3919ddf8556e1b59b55472fb6de42ba77e86 (diff)
Implement types regprocedure, regoper, regoperator, regclass, regtype
per pghackers discussion. Add some more typsanity tests, and clean up some problems exposed thereby (broken or missing array types for some built-in types). Also, clean up loose ends from unknownin/out patch.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/findoidjoins/README.findoidjoins8
-rw-r--r--contrib/findoidjoins/findoidjoins.c6
2 files changed, 8 insertions, 6 deletions
diff --git a/contrib/findoidjoins/README.findoidjoins b/contrib/findoidjoins/README.findoidjoins
index 557fd041586..14c17e1e0ed 100644
--- a/contrib/findoidjoins/README.findoidjoins
+++ b/contrib/findoidjoins/README.findoidjoins
@@ -1,10 +1,10 @@
findoidjoins
-This program scans a database, and prints oid fields (also regproc fields)
-and the tables they join to. CAUTION: it is ver-r-r-y slow on a large
-database, or even a not-so-large one. We don't really recommend running
-it on anything but an empty database, such as template1.
+This program scans a database, and prints oid fields (also regproc, regclass
+and regtype fields) and the tables they join to. CAUTION: it is ver-r-r-y
+slow on a large database, or even a not-so-large one. We don't really
+recommend running it on anything but an empty database, such as template1.
Uses pgeasy library.
diff --git a/contrib/findoidjoins/findoidjoins.c b/contrib/findoidjoins/findoidjoins.c
index c559b7a3625..c426b5523a3 100644
--- a/contrib/findoidjoins/findoidjoins.c
+++ b/contrib/findoidjoins/findoidjoins.c
@@ -39,7 +39,9 @@ main(int argc, char **argv)
WHERE a.attnum > 0 AND \
relkind = 'r' AND \
(typname = 'oid' OR \
- typname = 'regproc') AND \
+ typname = 'regproc' OR \
+ typname = 'regclass' OR \
+ typname = 'regtype') AND \
a.attrelid = c.oid AND \
a.atttypid = t.oid \
ORDER BY 2, a.attnum ; \
@@ -77,7 +79,7 @@ main(int argc, char **argv)
DECLARE c_matches BINARY CURSOR FOR \
SELECT count(*)::int4 \
FROM \"%s\" t1, \"%s\" t2 \
- WHERE RegprocToOid(t1.\"%s\") = t2.oid ",
+ WHERE t1.\"%s\"::oid = t2.oid ",
relname, relname2, attname);
doquery(query);