You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
postgres/contrib/oid2name
Tom Lane a5dafa3177 Tweak to test HAVE_GETOPT_H before including <getopt.h>, so as to 24 years ago
..
Makefile To fix the perpetually broken makefiles in the contrib tree, I have 24 years ago
README.oid2name
oid2name.c Tweak to test HAVE_GETOPT_H before including <getopt.h>, so as to 24 years ago

README.oid2name

With version 7.1 of PostgreSQL server,  the old naming scheme for
databases and tables (in $PGDATA/base) has changed. The databases
are put in folders for their OID in pg_database and the tables in
that folder are named for their OIDs in pg_class. This app connects
to the database (you can specify host, port, user, pass etc to
connect to a host other than localhost) and extracts the OID and
table name information. It has 4 ways it can be run:

pg_oid2name

This will connect to the template1 database and display all databases
in the system.

$ ./pg_oid2name
All databases:
---------------------------------
18720 = test1
1 = template1
18719 = template0
18721 = test
18735 = postgres
18736 = cssi

pg_oid2name -d test [-x]

This connects to the database test and shows all tables and their OIDs.

$ ./pg_oid2name -d test
All tables from database "test":
---------------------------------
18766 = dns
18737 = ips
18722 = testdate

pg_oid2name -d test -o 18737 or
pg_oid2name -d test -t testdate

This will connect to the database test and display the table name for oid
18737 and the oid for table name testdate respectivly.

$ ./pg_oid2name -d test -o 18737
Tablename of oid 18737 from database "test":
---------------------------------
18737 = ips


$ ./pg_oid2name -d test -t testdate
Oid of table testdate from database "test":
_______________________________
18722 = testdate


There should be a decent amount of error handling in the app, a lot of it
dealt with via the postgres function calls.

$ ./pg_oid2name -d nothere -t testdate
Oid of table testdate from database "nothere":
_______________________________
Connection to database 'nothere' failed.
FATAL 1: Database "nothere" does not exist in the system catalog.

$ ./pg_oid2name -d test -t nothere
Oid of table nothere from database "test":
_______________________________
No tables with that name found


Mail me with any problems or additions you would like to see. Clearing
house for the code will be at: http://www.crimelabs.net

b. palmer, bpalmer@crimelabs.net