Getting a list of tables in a database with Perl
I would like to know how I can fetch a list of existing tables in a database within a Perl script. Could someone please tell me how this can be done, or, at least, a good reference to look it up? Thanks.
---------------------------------
Do you Yahoo!?
Yahoo! Web Hosting - Let the expert host your site
Try this from the command line....
psql -c "\d"
And if you want to bring this into a perl script, try
perl -e '$list = `psql -c "\\d" `; print "$list\n";'
A more readable version is
$list = ` psql -c "\\d" `;
print "$list \n";
Or use DBI and go after pg_tables;
Andrew Magnus wrote:
Show quoted text
I would like to know how I can fetch a list of existing tables in a
database within a Perl script. Could someone please tell me how this
can be done, or, at least, a good reference to look it up? Thanks.------------------------------------------------------------------------
Do you Yahoo!?
Yahoo! Web Hosting
<http://rd.yahoo.com/hosting/mailsig/*http://webhosting.yahoo.com> -
Let the expert host your site
I am, actually, using DBI. I'm using Postgres on Linux with Perl 5.8. What I'm trying to do is this: the script checks to see if a table exists in the database, and if it doesn't, it creates it. It then carries the name of the table in a $variable for use with inserting, etc. That's it. Thanks. --andrew: --are you looking for just a list of tables, or, are you trying--to do something with the tables (insert / update / copy / etc)?--also, what database are you using and on what platform? --you may end up installing and using a DBI::DBD module. --i am running PostgreSQL on a Linux platform ... if i can help,--just post again and i'll submit the few examples i have. --laters! -X -----Original Message-----
From: Andrew Magnus [mailto:xanadian99@yahoo.com]
Sent: Tuesday, November 19, 2002 4:53 PM
To: pgsql-general@postgresql.org
Subject: [GENERAL] Getting a list of tables in a database with Perl
I would like to know how I can fetch a list of existing tables in a database within a Perl script. Could someone please tell me how this can be done, or, at least, a good reference to look it up? Thanks.
---------------------------------
Do you Yahoo!?
Yahoo! Web Hosting - Let the expert host your site
Import Notes
Reply to msg id not found: 73309C2FDD95D11192E60008C7B1D5BB04C74269@snt452.corp.bcbsm.com | Resolved by subject fallback
If you want slightly less formatted output, you can pull some
relational database magic:
select c.relname as "Table" from pg_class c where c.relkind = 'r' and
c.relname !~ '^pg_';
will pull up a list of all user-created tables.
On Tuesday, November 19, 2002, at 04:06 PM, Medi Montaseri wrote:
Show quoted text
Try this from the command line....
psql -c "\d"
And if you want to bring this into a perl script, try
perl -e '$list = `psql -c "\\d" `; print "$list\n";'
A more readable version is
$list = ` psql -c "\\d" `;
print "$list \n";Or use DBI and go after pg_tables;
Andrew Magnus wrote:
I would like to know how I can fetch a list of existing tables in a
database within a Perl script. Could someone please tell me how this
can be done, or, at least, a good reference to look it up? Thanks.----------------------------------------------------------------------
--
Do you Yahoo!?
Yahoo! Web Hosting
<http://rd.yahoo.com/hosting/mailsig/*http://webhosting.yahoo.com> -
Let the expert host your site---------------------------(end of
broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly