summaryrefslogtreecommitdiff
path: root/contrib/findoidjoins
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/findoidjoins')
-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);