Re: [SQL] Getting datatype before SELECT - Mailing list pgsql-sql

From James Olin Oden
Subject Re: [SQL] Getting datatype before SELECT
Date
Msg-id 81Sep29.063022edt.35713@gateway.lee.k12.nc.us
Whole thread Raw
In response to Re: [SQL] Getting datatype before SELECT  (Bob Smither <smither@C-C-I.Com>)
List pgsql-sql
> Not at all sure how to do this from C, but from perl I do something like
> this:
>
>   $temp = `psql -d databasename -c "\\d tablename"`
>
> The item between the `s is executed and the result returned to the
> variable.  $temp now has the full structure of the table and can be parsed
> to extract the column names and types.  The double \\ is needed to prevent
> perl from thinking that \d is a meta character (I think).
>
> The output of the command between the `s could also be redirected to a
> file.

In C he could do essentially the same thing.  One approach is to use system as
so:

   system("psql -d databasename -c \"\\d tablename\" -o /tmp/somefile");

And then he could open the file /tmp/somefile and parse his way through it.
Also, he can do the what perl does to create pipes (perl is written in C) and
essentially do the same thing as you are doing.  I personally would go with
the temp file, using my proccess id to as part of the tempfile name to make it
unique to my process, but it should not be to much work to make the proper
system calls to do the piping...james



pgsql-sql by date:

Previous
From: Bob Smither
Date:
Subject: Re: [SQL] Getting datatype before SELECT
Next
From: "Bryan White"
Date:
Subject: Re: [SQL] Getting datatype before SELECT