"\d tablename" to get column name, and column type by using JDBC

Started by Ying Luover 21 years ago4 messagesgeneral
Jump to latest
#1Ying Lu
ying_lu@cs.concordia.ca

Hello,

Under mysql, we have "desc tablename" to get the detail information
about a table. My question is about to get column name, and column type
for a specific table under PostgreSQL through JDBC.

Assume we have a table named "test". Under PSQL, we can input "\d test"
to see the details about table "test" successufully. However, my main
purpose is trying to get column name, column name of a table through JDBC.

The following is the java code, by which I always get " ERROR: syntax
error at or near "\" ".

Some clues?
Emi

====================================================================================
Connection connection = DriverManager.getConnection(url,
"abc", "abc"); //username and pwd is "abc"
Statement stmt = connection.createStatement();
String query = "\\d test";
System.out.println("query: "+query);
ResultSet rs = stmt.executeQuery(query);

#2Doug McNaught
doug@mcnaught.org
In reply to: Ying Lu (#1)
Re: "\d tablename" to get column name, and column type by

Ying Lu <ying_lu@cs.concordia.ca> writes:

Hello,

Under mysql, we have "desc tablename" to get the detail information
about a table. My question is about to get column name, and column
type for a specific table under PostgreSQL through JDBC.

Assume we have a table named "test". Under PSQL, we can input "\d
test" to see the details about table "test" successufully. However,
my main purpose is trying to get column name, column name of a table
through JDBC.

The backslash commands are specific to 'psql'. From Java you'll need
to query the INFORMATION_SCHEMA or the system catalogs.

-Doug
--
Let us cross over the river, and rest under the shade of the trees.
--T. J. Jackson, 1863

#3Paul Thomas
paul@tmsl.demon.co.uk
In reply to: Ying Lu (#1)
Re: "\d tablename" to get column name, and column type by using JDBC

On 02/09/2004 15:52 Ying Lu wrote:

Hello,

Under mysql, we have "desc tablename" to get the detail information
about a table. My question is about to get column name, and column type
for a specific table under PostgreSQL through JDBC.

Assume we have a table named "test". Under PSQL, we can input "\d test"
to see the details about table "test" successufully. However, my main
purpose is trying to get column name, column name of a table through
JDBC.

The following is the java code, by which I always get " ERROR: syntax
error at or near "\" ".

Some clues?

The \d command is a psql client feature. I has nothing to do with JDBC and
is not built into the server back-end (a few moments reading the source
code for psql would have shown you this). To obtain metadata through JDBC,
use the standard provided classes. If you don't know how to that then you
really need to learn JDBC. There's a good introductory tutorial on
java.sun.com

-- 
Paul Thomas
+------------------------------+---------------------------------------------+
| Thomas Micro Systems Limited | Software Solutions for 
Business             |
| Computer Consultants         | 
http://www.thomas-micro-systems-ltd.co.uk   |
+------------------------------+---------------------------------------------+
#4Ying Lu
ying_lu@cs.concordia.ca
In reply to: Doug McNaught (#2)
Re: "\d tablename" to get column name, and column type

Thanks a lot. Now I got it.

Doug McNaught wrote:

Show quoted text

Ying Lu <ying_lu@cs.concordia.ca> writes:

Hello,

Under mysql, we have "desc tablename" to get the detail information
about a table. My question is about to get column name, and column
type for a specific table under PostgreSQL through JDBC.

Assume we have a table named "test". Under PSQL, we can input "\d
test" to see the details about table "test" successufully. However,
my main purpose is trying to get column name, column name of a table
through JDBC.

The backslash commands are specific to 'psql'. From Java you'll need
to query the INFORMATION_SCHEMA or the system catalogs.

-Doug