Обсуждение: Fw: Re: Is there no "DESCRIBE ;" on PGSQL? help!!! Поиск
Список
Период
Сортировка
;" on PGSQL? help!!!
От
David Eduardo Gomez Noguera
Дата:
----------  Forwarded message ----------
Date: Fri, 19 Oct 2001 08:22:46 -0600
From: David Eduardo Gomez Noguera <davidgn@servidor.unam.mx>
To: "Ron de Jong" <Ron.Antispam@news.tht.net>
Cc: davidgn@servidor.unam.mx
Subject: Re: [HACKERS] Is there no  "DESCRIBE <TABLE>;" on PGSQL?      help!!!

on psql, do \?  there are a lot of commands that let you do it:

\l   (this list databases)
dabicho=# \l        List of databases Database   |  Owner   | Encoding  
-------------+----------+-----------agenda      | dabicho  | SQL_ASCIIcele        | dabicho  | SQL_ASCIIdabicho     |
dabicho | SQL_ASCIIdiccionario | dabicho  | SQL_ASCIIimagenes    | dabicho  | SQL_ASCIIlibros      | dabicho  |
SQL_ASCIImp3        | dabicho  | SQL_ASCIIpostgres    | postgres | SQL_ASCIItemplate0   | postgres | SQL_ASCIItemplate1
 | postgres | SQL_ASCII
 
(10 rows)

mp3=# \d    (this list tables on the current db)         List of relations     Name      |   Type   |  Owner  
----------------+----------+---------album          | table    | dabichoalbum_id_seq   | sequence | dabichoartista
 | table    | dabichoartista_id_seq | sequence | dabichodirpath        | table    | dabichodirpath_id_seq | sequence |
dabichogenero        | table    | dabichogenero_id_seq  | sequence | dabichomp3            | table    |
dabichomp3_id_seq    | sequence | dabichopga_forms      | table    | dabichopga_layout     | table    |
dabichopga_queries   | table    | dabichopga_reports    | table    | dabichopga_schema     | table    |
dabichopga_scripts   | table    | dabicho
 


mp3=# \d mp3  (this describes a table (mp3)                                   Table "mp3"  Attribute   |       Type
  |                    Modifier                    
 
---------------+-------------------+------------------------------------------------id            | integer           |
notnull default nextval('"mp3_id_seq"'::text)fk_dirpath_id | integer           | not nullfilename      | character
varying| not nulltitulo        | text              | not null default 'unknown'fk_artista_id | integer           | not
nulldefault 1fk_album_id   | integer           | not null default 1comentario    | text              | not null default
'none'year         | integer           | default 2001genero        | smallint          | not null default 1
 
Indices: mp3_fk_dirpath_id_key,        mp3_pkey

with \pset you can set output format.

mp3=# \pset expanded
Expanded display is on.
mp3=# \d mp3
Table "mp3"
-[ RECORD 1 ]---------------------------------------------
Attribute | id
Type      | integer
Modifier  | not null default nextval('"mp3_id_seq"'::text)
-[ RECORD 2 ]---------------------------------------------
Attribute | fk_dirpath_id
Type      | integer
Modifier  | not null
-[ RECORD 3 ]---------------------------------------------
....
there are many combinations
mp3=# \pset border 2
Border style is 2.
mp3=# \d mp3                                    Table "mp3"
+---------------+-------------------+------------------------------------------------+
|   Attribute   |       Type        |                    Modifier                    |
+---------------+-------------------+------------------------------------------------+
| id            | integer           | not null default nextval('"mp3_id_seq"'::text) |
| fk_dirpath_id | integer           | not null                                       |
| filename      | character varying | not null                                       |
| titulo        | text              | not null default 'unknown'                     |
| fk_artista_id | integer           | not null default 1                             |
| fk_album_id   | integer           | not null default 1                             |
| comentario    | text              | not null default 'none'                        |
| year          | integer           | default 2001                                   |
| genero        | smallint          | not null default 1                             |
+---------------+-------------------+------------------------------------------------+
Indices: mp3_fk_dirpath_id_key,        mp3_pkey

pretty much the same, and fairly human readable to me. (although not everything sorted in columns, i guess you could do
querysto the system tables to get that, or use awk to get the bits you want =) )
 
I just this the postgres team has don an excelent work so far.

Reply.
> Any idea to get a human readable list with column descriptions like
> type,size,key,default,null.
> It would be nice if it would look simular to the mysql variant:
> 
> mysql> describe employee;
> +-----------+----------+------+-----+---------+----------------+
> | Field     | Type     | Null | Key | Default | Extra          |
> +-----------+----------+------+-----+---------+----------------+
> | Id        | int(11)  |      | PRI | NULL    | auto_increment |
> | FirstName | char(30) |      | MUL |         |                |
> | LastName  | char(30) |      |     |         |                |
> | Infix     | char(10) | YES  |     | NULL    |                |
> | Address1  | char(30) | YES  |     | NULL    |                |
> | PostCode  | char(10) | YES  |     | NULL    |                |
> | Town      | int(11)  | YES  |     | NULL    |                |
> +-----------+----------+------+-----+---------+----------------+
> 
> Cheers, Ron.
> 
> 
> 



-- 
ICQ: 15605359 Bicho                                 =^..^=
First, they ignore you. Then they laugh at you. Then they fight you. Then you win. Mahatma Gandhi.
........Por que no pensaran los hombres como los animales? Pink Panther........
-------------------------------気検体の一致------------------------------------
暑さ寒さも彼岸まで。
アン アン アン とっても大好き

> on psql, do \?  there are a lot of commands that let you do it:
> 
> \l   (this list databases)
> dabicho=# \l
>          List of databases
>   Database   |  Owner   | Encoding  
> -------------+----------+-----------
>  agenda      | dabicho  | SQL_ASCII
>  cele        | dabicho  | SQL_ASCII
>  dabicho     | dabicho  | SQL_ASCII
>  diccionario | dabicho  | SQL_ASCII
>  imagenes    | dabicho  | SQL_ASCII
>  libros      | dabicho  | SQL_ASCII
>  mp3         | dabicho  | SQL_ASCII
>  postgres    | postgres | SQL_ASCII
>  template0   | postgres | SQL_ASCII
>  template1   | postgres | SQL_ASCII
> (10 rows)
> 
> mp3=# \d    (this list tables on the current db)
>           List of relations
>       Name      |   Type   |  Owner  
> ----------------+----------+---------
>  album          | table    | dabicho
>  album_id_seq   | sequence | dabicho
>  artista        | table    | dabicho
>  artista_id_seq | sequence | dabicho
>  dirpath        | table    | dabicho
>  dirpath_id_seq | sequence | dabicho
>  genero         | table    | dabicho
>  genero_id_seq  | sequence | dabicho
>  mp3            | table    | dabicho
>  mp3_id_seq     | sequence | dabicho
>  pga_forms      | table    | dabicho
>  pga_layout     | table    | dabicho
>  pga_queries    | table    | dabicho
>  pga_reports    | table    | dabicho
>  pga_schema     | table    | dabicho
>  pga_scripts    | table    | dabicho
> 
> 
> mp3=# \d mp3  (this describes a table (mp3)
>                                     Table "mp3"
>    Attribute   |       Type        |                    Modifier                    
> ---------------+-------------------+------------------------------------------------
>  id            | integer           | not null default nextval('"mp3_id_seq"'::text)
>  fk_dirpath_id | integer           | not null
>  filename      | character varying | not null
>  titulo        | text              | not null default 'unknown'
>  fk_artista_id | integer           | not null default 1
>  fk_album_id   | integer           | not null default 1
>  comentario    | text              | not null default 'none'
>  year          | integer           | default 2001
>  genero        | smallint          | not null default 1
> Indices: mp3_fk_dirpath_id_key,
>          mp3_pkey
> 
> with \pset you can set output format.
> 
> mp3=# \pset expanded
> Expanded display is on.
> mp3=# \d mp3
> Table "mp3"
> -[ RECORD 1 ]---------------------------------------------
> Attribute | id
> Type      | integer
> Modifier  | not null default nextval('"mp3_id_seq"'::text)
> -[ RECORD 2 ]---------------------------------------------
> Attribute | fk_dirpath_id
> Type      | integer
> Modifier  | not null
> -[ RECORD 3 ]---------------------------------------------
> ....
> there are many combinations
> mp3=# \pset border 2
> Border style is 2.
> mp3=# \d mp3
>                                      Table "mp3"
> +---------------+-------------------+------------------------------------------------+
> |   Attribute   |       Type        |                    Modifier                    |
> +---------------+-------------------+------------------------------------------------+
> | id            | integer           | not null default nextval('"mp3_id_seq"'::text) |
> | fk_dirpath_id | integer           | not null                                       |
> | filename      | character varying | not null                                       |
> | titulo        | text              | not null default 'unknown'                     |
> | fk_artista_id | integer           | not null default 1                             |
> | fk_album_id   | integer           | not null default 1                             |
> | comentario    | text              | not null default 'none'                        |
> | year          | integer           | default 2001                                   |
> | genero        | smallint          | not null default 1                             |
> +---------------+-------------------+------------------------------------------------+
> Indices: mp3_fk_dirpath_id_key,
>          mp3_pkey
> 
> pretty much the same, and fairly human readable to me. (although not everything sorted in columns, i guess you could
doquerys to the system tables to get that, or use awk to get the bits you want =) )
 
> I just this the postgres team has don an excelent work so far.
> 
> Reply.
> > Any idea to get a human readable list with column descriptions like
> > type,size,key,default,null.
> > It would be nice if it would look simular to the mysql variant:
> > 
> > mysql> describe employee;
> > +-----------+----------+------+-----+---------+----------------+
> > | Field     | Type     | Null | Key | Default | Extra          |
> > +-----------+----------+------+-----+---------+----------------+
> > | Id        | int(11)  |      | PRI | NULL    | auto_increment |
> > | FirstName | char(30) |      | MUL |         |                |
> > | LastName  | char(30) |      |     |         |                |
> > | Infix     | char(10) | YES  |     | NULL    |                |
> > | Address1  | char(30) | YES  |     | NULL    |                |
> > | PostCode  | char(10) | YES  |     | NULL    |                |
> > | Town      | int(11)  | YES  |     | NULL    |                |
> > +-----------+----------+------+-----+---------+----------------+
> > 
> > Cheers, Ron.
> > 
> > 
> > 
> 
> 
> 
> -- 
> ICQ: 15605359 Bicho
>                                   =^..^=
> First, they ignore you. Then they laugh at you. Then they fight you. Then you win. Mahatma Gandhi.
> ........Por que no pensaran los hombres como los animales? Pink Panther........
> -------------------------------気検体の一致------------------------------------
> 暑さ寒さも彼岸まで。
> アン アン アン とっても大好き


-- 
ICQ: 15605359 Bicho                                 =^..^=
First, they ignore you. Then they laugh at you. Then they fight you. Then you win. Mahatma Gandhi.
........Por que no pensaran los hombres como los animales? Pink Panther........
-------------------------------気検体の一致------------------------------------
暑さ寒さも彼岸まで。
アン アン アン とっても大好き



;" on PGSQL? help!!!
От
David Eduardo Gomez Noguera
Дата:
Sorry about that message. My mailer had a bad reply format.


-- 
ICQ: 15605359 Bicho                                 =^..^=
First, they ignore you. Then they laugh at you. Then they fight you. Then you win. Mahatma Gandhi.
........Por que no pensaran los hombres como los animales? Pink Panther........
-------------------------------気検体の一致------------------------------------
暑さ寒さも彼岸まで。
アン アン アン とっても大好き



;" on PGSQL? help!!!
От
"Ron de Jong"
Дата:
If you like the psql client then have a look at a graphical "psql" CGI
program!!!
It's just one file twdba.cgi to put in your cgi-bin directory and your
browser does the rest.

http://home.planet.nl/~radejong (TWDBA Download button)

You see the \? tricks only work with that particular psql client and the
engine does not honor them from another client.

You'll love it!!!


"David Eduardo Gomez Noguera" <davidgn@servidor.unam.mx> wrote in message
news:20011019082812.2bf29485.davidgn@servidor.unam.mx...
> ----------  Forwarded message ----------
> Date: Fri, 19 Oct 2001 08:22:46 -0600
> From: David Eduardo Gomez Noguera <davidgn@servidor.unam.mx>
> To: "Ron de Jong" <Ron.Antispam@news.tht.net>
> Cc: davidgn@servidor.unam.mx
> Subject: Re: [HACKERS] Is there no  "DESCRIBE <TABLE>;" on PGSQL?
help!!!
>
> on psql, do \?  there are a lot of commands that let you do it:
>
> \l   (this list databases)
> dabicho=# \l
>          List of databases
>   Database   |  Owner   | Encoding
> -------------+----------+-----------
>  agenda      | dabicho  | SQL_ASCII
>  cele        | dabicho  | SQL_ASCII
>  dabicho     | dabicho  | SQL_ASCII
>  diccionario | dabicho  | SQL_ASCII
>  imagenes    | dabicho  | SQL_ASCII
>  libros      | dabicho  | SQL_ASCII
>  mp3         | dabicho  | SQL_ASCII
>  postgres    | postgres | SQL_ASCII
>  template0   | postgres | SQL_ASCII
>  template1   | postgres | SQL_ASCII
> (10 rows)
>
> mp3=# \d    (this list tables on the current db)
>           List of relations
>       Name      |   Type   |  Owner
> ----------------+----------+---------
>  album          | table    | dabicho
>  album_id_seq   | sequence | dabicho
>  artista        | table    | dabicho
>  artista_id_seq | sequence | dabicho
>  dirpath        | table    | dabicho
>  dirpath_id_seq | sequence | dabicho
>  genero         | table    | dabicho
>  genero_id_seq  | sequence | dabicho
>  mp3            | table    | dabicho
>  mp3_id_seq     | sequence | dabicho
>  pga_forms      | table    | dabicho
>  pga_layout     | table    | dabicho
>  pga_queries    | table    | dabicho
>  pga_reports    | table    | dabicho
>  pga_schema     | table    | dabicho
>  pga_scripts    | table    | dabicho
>
>
> mp3=# \d mp3  (this describes a table (mp3)
>                                     Table "mp3"
>    Attribute   |       Type        |                    Modifier
> ---------------+-------------------+--------------------------------------
----------
>  id            | integer           | not null default
nextval('"mp3_id_seq"'::text)
>  fk_dirpath_id | integer           | not null
>  filename      | character varying | not null
>  titulo        | text              | not null default 'unknown'
>  fk_artista_id | integer           | not null default 1
>  fk_album_id   | integer           | not null default 1
>  comentario    | text              | not null default 'none'
>  year          | integer           | default 2001
>  genero        | smallint          | not null default 1
> Indices: mp3_fk_dirpath_id_key,
>          mp3_pkey
>
> with \pset you can set output format.
>
> mp3=# \pset expanded
> Expanded display is on.
> mp3=# \d mp3
> Table "mp3"
> -[ RECORD 1 ]---------------------------------------------
> Attribute | id
> Type      | integer
> Modifier  | not null default nextval('"mp3_id_seq"'::text)
> -[ RECORD 2 ]---------------------------------------------
> Attribute | fk_dirpath_id
> Type      | integer
> Modifier  | not null
> -[ RECORD 3 ]---------------------------------------------
> ....
> there are many combinations
> mp3=# \pset border 2
> Border style is 2.
> mp3=# \d mp3
>                                      Table "mp3"
>
+---------------+-------------------+---------------------------------------
---------+
> |   Attribute   |       Type        |                    Modifier
|
>
+---------------+-------------------+---------------------------------------
---------+
> | id            | integer           | not null default
nextval('"mp3_id_seq"'::text) |
> | fk_dirpath_id | integer           | not null
|
> | filename      | character varying | not null
|
> | titulo        | text              | not null default 'unknown'
|
> | fk_artista_id | integer           | not null default 1
|
> | fk_album_id   | integer           | not null default 1
|
> | comentario    | text              | not null default 'none'
|
> | year          | integer           | default 2001
|
> | genero        | smallint          | not null default 1
|
>
+---------------+-------------------+---------------------------------------
---------+
> Indices: mp3_fk_dirpath_id_key,
>          mp3_pkey
>
> pretty much the same, and fairly human readable to me. (although not
everything sorted in columns, i guess you could do querys to the system
tables to get that, or use awk to get the bits you want =) )
> I just this the postgres team has don an excelent work so far.
>
> Reply.
> > Any idea to get a human readable list with column descriptions like
> > type,size,key,default,null.
> > It would be nice if it would look simular to the mysql variant:
> >
> > mysql> describe employee;
> > +-----------+----------+------+-----+---------+----------------+
> > | Field     | Type     | Null | Key | Default | Extra          |
> > +-----------+----------+------+-----+---------+----------------+
> > | Id        | int(11)  |      | PRI | NULL    | auto_increment |
> > | FirstName | char(30) |      | MUL |         |                |
> > | LastName  | char(30) |      |     |         |                |
> > | Infix     | char(10) | YES  |     | NULL    |                |
> > | Address1  | char(30) | YES  |     | NULL    |                |
> > | PostCode  | char(10) | YES  |     | NULL    |                |
> > | Town      | int(11)  | YES  |     | NULL    |                |
> > +-----------+----------+------+-----+---------+----------------+
> >
> > Cheers, Ron.
> >
> >
> >
>
>
>
> --
> ICQ: 15605359 Bicho
>                                   =^..^=
> First, they ignore you. Then they laugh at you. Then they fight you. Then
you win. Mahatma Gandhi.
> ........Por que no pensaran los hombres como los animales? Pink
Panther........
> -------------------------------$B5$8!BN$N0lCW(B-------------------------
-----------
> $B=k$54($5$bH`4_$^$G!#(B
> $B%"%s(B $B%"%s(B $B%"%s(B $B$H$C$F$bBg9%$-(B
>
> > on psql, do \?  there are a lot of commands that let you do it:
> >
> > \l   (this list databases)
> > dabicho=# \l
> >          List of databases
> >   Database   |  Owner   | Encoding
> > -------------+----------+-----------
> >  agenda      | dabicho  | SQL_ASCII
> >  cele        | dabicho  | SQL_ASCII
> >  dabicho     | dabicho  | SQL_ASCII
> >  diccionario | dabicho  | SQL_ASCII
> >  imagenes    | dabicho  | SQL_ASCII
> >  libros      | dabicho  | SQL_ASCII
> >  mp3         | dabicho  | SQL_ASCII
> >  postgres    | postgres | SQL_ASCII
> >  template0   | postgres | SQL_ASCII
> >  template1   | postgres | SQL_ASCII
> > (10 rows)
> >
> > mp3=# \d    (this list tables on the current db)
> >           List of relations
> >       Name      |   Type   |  Owner
> > ----------------+----------+---------
> >  album          | table    | dabicho
> >  album_id_seq   | sequence | dabicho
> >  artista        | table    | dabicho
> >  artista_id_seq | sequence | dabicho
> >  dirpath        | table    | dabicho
> >  dirpath_id_seq | sequence | dabicho
> >  genero         | table    | dabicho
> >  genero_id_seq  | sequence | dabicho
> >  mp3            | table    | dabicho
> >  mp3_id_seq     | sequence | dabicho
> >  pga_forms      | table    | dabicho
> >  pga_layout     | table    | dabicho
> >  pga_queries    | table    | dabicho
> >  pga_reports    | table    | dabicho
> >  pga_schema     | table    | dabicho
> >  pga_scripts    | table    | dabicho
> >
> >
> > mp3=# \d mp3  (this describes a table (mp3)
> >                                     Table "mp3"
> >    Attribute   |       Type        |                    Modifier
>
> ---------------+-------------------+--------------------------------------
----------
> >  id            | integer           | not null default
nextval('"mp3_id_seq"'::text)
> >  fk_dirpath_id | integer           | not null
> >  filename      | character varying | not null
> >  titulo        | text              | not null default 'unknown'
> >  fk_artista_id | integer           | not null default 1
> >  fk_album_id   | integer           | not null default 1
> >  comentario    | text              | not null default 'none'
> >  year          | integer           | default 2001
> >  genero        | smallint          | not null default 1
> > Indices: mp3_fk_dirpath_id_key,
> >          mp3_pkey
> >
> > with \pset you can set output format.
> >
> > mp3=# \pset expanded
> > Expanded display is on.
> > mp3=# \d mp3
> > Table "mp3"
> > -[ RECORD 1 ]---------------------------------------------
> > Attribute | id
> > Type      | integer
> > Modifier  | not null default nextval('"mp3_id_seq"'::text)
> > -[ RECORD 2 ]---------------------------------------------
> > Attribute | fk_dirpath_id
> > Type      | integer
> > Modifier  | not null
> > -[ RECORD 3 ]---------------------------------------------
> > ....
> > there are many combinations
> > mp3=# \pset border 2
> > Border style is 2.
> > mp3=# \d mp3
> >                                      Table "mp3"
> >
+---------------+-------------------+---------------------------------------
---------+
> > |   Attribute   |       Type        |                    Modifier
|
> >
+---------------+-------------------+---------------------------------------
---------+
> > | id            | integer           | not null default
nextval('"mp3_id_seq"'::text) |
> > | fk_dirpath_id | integer           | not null
|
> > | filename      | character varying | not null
|
> > | titulo        | text              | not null default 'unknown'
|
> > | fk_artista_id | integer           | not null default 1
|
> > | fk_album_id   | integer           | not null default 1
|
> > | comentario    | text              | not null default 'none'
|
> > | year          | integer           | default 2001
|
> > | genero        | smallint          | not null default 1
|
> >
+---------------+-------------------+---------------------------------------
---------+
> > Indices: mp3_fk_dirpath_id_key,
> >          mp3_pkey
> >
> > pretty much the same, and fairly human readable to me. (although not
everything sorted in columns, i guess you could do querys to the system
tables to get that, or use awk to get the bits you want =) )
> > I just this the postgres team has don an excelent work so far.
> >
> > Reply.
> > > Any idea to get a human readable list with column descriptions like
> > > type,size,key,default,null.
> > > It would be nice if it would look simular to the mysql variant:
> > >
> > > mysql> describe employee;
> > > +-----------+----------+------+-----+---------+----------------+
> > > | Field     | Type     | Null | Key | Default | Extra          |
> > > +-----------+----------+------+-----+---------+----------------+
> > > | Id        | int(11)  |      | PRI | NULL    | auto_increment |
> > > | FirstName | char(30) |      | MUL |         |                |
> > > | LastName  | char(30) |      |     |         |                |
> > > | Infix     | char(10) | YES  |     | NULL    |                |
> > > | Address1  | char(30) | YES  |     | NULL    |                |
> > > | PostCode  | char(10) | YES  |     | NULL    |                |
> > > | Town      | int(11)  | YES  |     | NULL    |                |
> > > +-----------+----------+------+-----+---------+----------------+
> > >
> > > Cheers, Ron.
> > >
> > >
> > >
> >
> >
> >
> > --
> > ICQ: 15605359 Bicho
> >                                   =^..^=
> > First, they ignore you. Then they laugh at you. Then they fight you.
Then you win. Mahatma Gandhi.
> > ........Por que no pensaran los hombres como los animales? Pink
Panther........
>
> -------------------------------$B5$8!BN$N0lCW(B-------------------------
-----------
> > $B=k$54($5$bH`4_$^$G!#(B
> > $B%"%s(B $B%"%s(B $B%"%s(B $B$H$C$F$bBg9%$-(B
>
>
> --
> ICQ: 15605359 Bicho
>                                   =^..^=
> First, they ignore you. Then they laugh at you. Then they fight you. Then
you win. Mahatma Gandhi.
> ........Por que no pensaran los hombres como los animales? Pink
Panther........
> -------------------------------$B5$8!BN$N0lCW(B-------------------------
-----------
> $B=k$54($5$bH`4_$^$G!#(B
> $B%"%s(B $B%"%s(B $B%"%s(B $B$H$C$F$bBg9%$-(B
>
>
> ---------------------------(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