Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сгенерить описание базы данных / 8 сообщений из 8, страница 1 из 1
06.04.2015, 16:25
    #38928276
springy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
Есть база. В таблицах присутствует описание COMMENT ON TABLE, COMMENT ON COLUMN.

Есть какая-либо возможность сгенерить всё это описание по всем схемам и таблицам в HTML формате?
...
Рейтинг: 0 / 0
06.04.2015, 19:26
    #38928478
fte
fte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
Это называется реинжениринг?
из бесплатных....
pgmodeler
но он сыроват...
Остальное за бабло
...
Рейтинг: 0 / 0
07.04.2015, 10:43
    #38928876
springy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
Нет, нужно просто описание. Что-то типа страничек с описанием название таблицы, поля в таблицы с комментариями прописанными в базе.
...
Рейтинг: 0 / 0
07.04.2015, 11:32
    #38928982
p2.
p2.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
springy,

Для генерациии одностраничного html без изысков - psql.
...
Рейтинг: 0 / 0
07.04.2015, 11:37
    #38928989
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
springy,
и непременно в html сразу ?

если вывести грид в html не боитесть (могу конечно кастнуть в html сразу sql-m, но зачем)

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
SELECT 
	CASE WHEN attnum =0 THEN quote_ident( pg_namespace.nspname) END AS "schema"
	,CASE WHEN attnum =0 THEN pg_class.relname END AS relname
	--,pg_inherits.inhparent
	,CASE WHEN attnum <>0 THEN attnum END AS attnum
	,pg_attribute.attname
	,CASE WHEN attnum= 0 THEN pg_catalog.obj_description(pg_class.oid) ELSE  pg_description.description END
	--,pg_type.typname
	,TRIM (REPLACE(
	REPLACE(
	format_type(pg_attribute.atttypid, pg_attribute.atttypmod)
	,'character varying','varchar')
	,'without time zone','')
	) AS format_type
	--,pg_attribute.*
	--,pg_class.*

 FROM  pg_class 
 INNER JOIN pg_namespace 
	ON pg_namespace.oid = pg_class.relnamespace
 INNER JOIN
	--/*
	(SELECT
		
		attrelid, attnum, attname,atttypid,atttypmod FROM pg_attribute pga
	UNION ALL
	SELECT pg_class.oid AS attrelid, 0 AS attnum,NULL AS attname, NULL AS atttypid ,NULL AS atttypmod
	FROM pg_class
	 )--*/	
	pg_attribute 
	ON pg_attribute.attrelid = pg_class.oid 
 LEFT JOIN pg_description
	ON  pg_description.objoid = pg_class.oid 
	AND pg_description.objsubid = pg_attribute.attnum
LEFT JOIN pg_type
	ON  pg_attribute.atttypid=pg_type.oid
LEFT JOIN pg_inherits 
	ON pg_inherits.inhrelid = pg_class.oid 
WHERE	
	pg_class.relkind='r' 
	AND pg_attribute.attnum>=0
	AND pg_inherits.inhparent IS NULL
	
	AND quote_ident( pg_namespace.nspname) NOT IN ('pg_catalog','information_schema'
				,'londiste','pgq','pgq_ext','pgq_node','trash')
ORDER BY 
	quote_ident( pg_namespace.nspname)
	,pg_class.relname
	,pg_attribute.attnum
  

...
Рейтинг: 0 / 0
07.04.2015, 13:49
    #38929215
springy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
Просто нужна справочная система по базе, для удобства разработчиков. В одну страницу не очень удобно, объектов очень много.
Думал есть что-то готовое.
...
Рейтинг: 0 / 0
07.04.2015, 14:04
    #38929243
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
springyПросто нужна справочная система по базе, для удобства разработчиков. В одну страницу не очень удобно, объектов очень много.
Думал есть что-то готовое.
осторожно интересуюсь -- а что, на жабе написать html-пагинатор для грида -- уже проблема ?

или вы И на жабе -- груши околачиваете ?

а так -- залезьте в любой реверс--инжинирящий вструмент. оно и отчеты умеет. (или только их нормально и умеет)

как вариант -- суньте в приведенный скрипт пару бинд-переменных -- по схемам, или для ilike по имени -- будет вам интерактив. когда вызов из жабы закодите.
интерактив -- он всегда лучше -- даёт возможности сделать обозримые срезы.

кста, недавно какую-то обобщенную шняжку показывали -- грабит всё, что хошь -- от ара--кала, до мускуля, не пропуская пж и мсскл. но, за ненадобностью, не запомнил.
...
Рейтинг: 0 / 0
07.04.2015, 16:42
    #38929560
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сгенерить описание базы данных
springy,

Это просто и быстро скриптуется через связку shell + psql.
Когда захочется красивостей — перейти на perl / python, ключиков добавить, выложить на github...

Можно что-то тут глянуть: https://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сгенерить описание базы данных / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]