URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 1036
[ Назад ]

Исходное сообщение
"php и Postgre- как узнать сколько табл. в БД   "

Отправлено ppp , 19-Янв-03 17:10 
как узнать через пхп сколько таблиц и их название в определенной БД. в Postgre SQL

Содержание

Сообщения в этом обсуждении
"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено uldus , 19-Янв-03 17:14 
>как узнать через пхп сколько таблиц и их название в определенной БД.
>в Postgre SQL

Смотри описание системных таблиц pg_*:
pg_aggregate    pg_database     pg_language     pg_rewrite
pg_am           pg_description  pg_largeobject  pg_shadow
pg_amop         pg_group        pg_listener     pg_statistic
pg_amproc       pg_index        pg_opclass      pg_trigger
pg_attrdef      pg_inheritproc  pg_operator     pg_type
pg_attribute    pg_inherits     pg_proc        
pg_class        pg_ipl          pg_relcheck

Table "pg_database"
   Attribute   |  Type   | Modifier
---------------+---------+----------
datname       | name    |
datdba        | integer |
encoding      | integer |
datistemplate | boolean |
datallowconn  | boolean |
datlastsysoid | oid     |
datpath       | text    |


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено ppp , 20-Янв-03 18:57 
>>как узнать через пхп сколько таблиц и их название в определенной БД.
>>в Postgre SQL
>
>Смотри описание системных таблиц pg_*:
>pg_aggregate    pg_database     pg_language  
>  pg_rewrite
>pg_am           pg_description
> pg_largeobject  pg_shadow
>pg_amop         pg_group  
>     pg_listener     pg_statistic
>
>pg_amproc       pg_index    
>   pg_opclass      pg_trigger
>pg_attrdef      pg_inheritproc  pg_operator    
> pg_type
>pg_attribute    pg_inherits     pg_proc
>pg_class        pg_ipl    
>      pg_relcheck
>
>Table "pg_database"
>   Attribute   |  Type   |
>Modifier
>---------------+---------+----------
> datname       | name  
> |
> datdba        | integer |
>
> encoding      | integer |
> datistemplate | boolean |
> datallowconn  | boolean |
> datlastsysoid | oid     |
> datpath       | text  
> |
Так это базы, а мне нужно из определнной базы вытянуть все названия таблиц и тд.


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено uldus , 20-Янв-03 19:25 
>Так это базы, а мне нужно из определнной базы вытянуть все названия
>таблиц и тд.

Вот и вытягивай "select * from pg_class;" В чем проблема ?


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено ppp , 21-Янв-03 14:59 
>>Так это базы, а мне нужно из определнной базы вытянуть все названия
>>таблиц и тд.
>
>Вот и вытягивай "select * from pg_class;" В чем проблема ?
Но у меня нет pg_class и много того что у тебя выдает pg_ - tab
система АСП постгре с пакетов.


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено Somebody , 21-Янв-03 15:09 
>как узнать через пхп сколько таблиц и их название в определенной БД.
>в Postgre SQL


select * from pg_tables


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено ppp , 21-Янв-03 18:08 
>>как узнать через пхп сколько таблиц и их название в определенной БД.
>>в Postgre SQL
>
>
>select * from pg_tables
Так ведь нет у меня этого. Не  pg_tables , не pg_database и тд.
Только типа pg_dump, -//-lo и ничего такого.


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено Somebody , 21-Янв-03 19:25 
>>>как узнать через пхп сколько таблиц и их название в определенной БД.
>>>в Postgre SQL
>>
>>
>>select * from pg_tables
>Так ведь нет у меня этого. Не  pg_tables , не pg_database
>и тд.
>Только типа pg_dump, -//-lo и ничего такого.


раз нет значит и нельзя тебе знать всего этого


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено ppp , 21-Янв-03 19:37 
>>>>как узнать через пхп сколько таблиц и их название в определенной БД.
>>>>в Postgre SQL
>>>
>>>
>>>select * from pg_tables
>>Так ведь нет у меня этого. Не  pg_tables , не pg_database
>>и тд.
>>Только типа pg_dump, -//-lo и ничего такого.
>
>
>раз нет значит и нельзя тебе знать всего этого

Что это значит и ненадо занть, на своей машине у меня права РУТА и прова Postgres. Так что это как раз я и должен знать.


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено Scy , 22-Янв-03 03:23 
Просто у когото терпения не хватило !!!!

Проще:
select * from pg_tables
Это значит взять всё из pg_tables

Замени pg_tables на название своей таблици или базы данных что там у тебя  !!!!

А насчёт пхп читай доки !!!

Я работал только MySql в пхп так что как там с Postgre SQL незнаю но думаю что близко они лежат !!!


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено Сергей Волосевич , 22-Янв-03 14:20 
Это для MySql, но как здесь уже заметили должно работать и под Postgre,
либо нейкий аналог

mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| menagerie  |
+------------+

mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| event               |
| pet                 |
+---------------------+

mysql> DESCRIBE pet;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name    | varchar(20) | YES  |     | NULL    |       |
| owner   | varchar(20) | YES  |     | NULL    |       |
| species | varchar(20) | YES  |     | NULL    |       |
| sex     | char(1)     | YES  |     | NULL    |       |
| birth   | date        | YES  |     | NULL    |       |
| death   | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено ppp , 22-Янв-03 21:06 
>Это для MySql, но как здесь уже заметили должно работать и под
>Postgre,
>либо нейкий аналог
>
>mysql> SELECT DATABASE();
>+------------+
>| DATABASE() |
>+------------+
>| menagerie  |
>+------------+
>
>mysql> SHOW TABLES;
>+---------------------+
>| Tables in menagerie |
>+---------------------+
>| event          
>    |
>| pet          
>      |
>+---------------------+
>
>mysql> DESCRIBE pet;
>+---------+-------------+------+-----+---------+-------+
>| Field   | Type      
> | Null | Key | Default | Extra |
>+---------+-------------+------+-----+---------+-------+
>| name    | varchar(20) | YES  |  
>   | NULL    |  
>    |
>| owner   | varchar(20) | YES  |  
>  | NULL    |    
>   |
>| species | varchar(20) | YES  |    
>| NULL    |      
> |
>| sex     | char(1)    
>| YES  |     | NULL  
>  |       |
>| birth   | date      
> | YES  |     | NULL
>   |       |
>
>| death   | date      
> | YES  |     | NULL
>   |       |
>
>+---------+-------------+------+-----+---------+-------+

неработает это в постгре покрайне мере у меня (АСП 7.3 Постгре 7.2.Х - из пакетов).
И поповоду предыдущего сообщения мне нужно имена таблиц базы данных, а не поля таблицы выдающей при помощи select * from tables


"RE: php и Postgre- как узнать сколько табл. в БД   "
Отправлено Scy , 27-Янв-03 02:44 
>>Это для MySql, но как здесь уже заметили должно работать и под
>>Postgre,
>>либо нейкий аналог
>>
>>mysql> SELECT DATABASE();
>>+------------+
>>| DATABASE() |
>>+------------+
>>| menagerie  |
>>+------------+
>>
>>mysql> SHOW TABLES;
>>+---------------------+
>>| Tables in menagerie |
>>+---------------------+
>>| event          
>>    |
>>| pet          
>>      |
>>+---------------------+
>>
>>mysql> DESCRIBE pet;
>>+---------+-------------+------+-----+---------+-------+
>>| Field   | Type      
>> | Null | Key | Default | Extra |
>>+---------+-------------+------+-----+---------+-------+
>>| name    | varchar(20) | YES  |  
>>   | NULL    |  
>>    |
>>| owner   | varchar(20) | YES  |  
>>  | NULL    |    
>>   |
>>| species | varchar(20) | YES  |    
>>| NULL    |      
>> |
>>| sex     | char(1)    
>>| YES  |     | NULL  
>>  |       |
>>| birth   | date      
>> | YES  |     | NULL
>>   |       |
>>
>>| death   | date      
>> | YES  |     | NULL
>>   |       |
>>
>>+---------+-------------+------+-----+---------+-------+
>
>неработает это в постгре покрайне мере у меня (АСП 7.3 Постгре 7.2.Х
>- из пакетов).
>И поповоду предыдущего сообщения мне нужно имена таблиц базы данных, а не
>поля таблицы выдающей при помощи select * from tables


В mysql есть команда mysqlshow онато как раз и показывает то что тебе надо !!!   Читай доки про свою базу думаю найдёш !!!