|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Господа, подскажите, возможно ли получить каким-то образом наименования всех столбцов какой либо таблицы? Версия postgresql 7.3.3. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2003, 16:53 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Точно не скажу запрос, нету под рукой постгреса. Что-то типа Код: plaintext 1.
Вообщем в этой таблице хранятся все поля всех таблиц .... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2003, 18:43 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
а типа Код: plaintext 1. 2.
не годится? или надо из приложения? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 01:47 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 07:49 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Господа, спасибо большое! И следом возник другой вопрос: как получить перечень таблиц в определённой базе данных? Порылся в системных каталогах не нашёл такой возможности, приходиться опять к вам за помощью обращаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 15:14 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
SELECT t.oid, t.typname AS name, t.typtype, t.typbyval, t.typalign, t.typdelim, t.typstorage, t.typlen, t.typdefault, t.typinput, t.typoutput, t.typelem, u.usename, ds.description, et.typname AS elemtype, t.typrelid, t.typnotnull, t.typndims, bt.typname AS basetype, n.nspname, btn.nspname AS btnsname, infn.nspname AS infnsp, oufn.nspname AS outfnsp, t.typtypmod, etn.nspname AS etnsp, ctr.relkind FROM pg_type t LEFT OUTER JOIN pg_user u ON t.typowner = u.usesysid LEFT OUTER JOIN pg_description ds ON ds.objoid = t.oid LEFT OUTER JOIN pg_type et ON t.typelem = et.oid INNER JOIN pg_namespace n ON t.typnamespace = n.oid LEFT OUTER JOIN pg_type bt ON t.typbasetype = bt.oid LEFT OUTER JOIN pg_namespace btn ON bt.typnamespace = btn.oid LEFT OUTER JOIN pg_proc inf ON t.typinput = inf.oid LEFT OUTER JOIN pg_namespace infn ON inf.pronamespace = infn.oid LEFT OUTER JOIN pg_proc ouf ON t.typoutput = ouf.oid LEFT OUTER JOIN pg_namespace oufn ON ouf.pronamespace = oufn.oid LEFT OUTER JOIN pg_namespace et ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 15:35 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
А что такое "t" объясните подробней, если не сложно можно по icq: 123740943. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 16:08 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
t - Alias ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 16:19 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Господа, а Вы уверены что последний запрос составлен коректно и вобще он полный? Мой postgresql ругается говорит что ошибка в конце запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2003, 17:02 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Сорри, не полный. Вот полный запрос: SELECT t.oid, t.typname AS name, t.typtype, t.typbyval, t.typalign, t.typdelim, t.typstorage, t.typlen, t.typdefault, t.typinput, t.typoutput, t.typelem, u.usename, ds.description, et.typname AS elemtype, t.typrelid, t.typnotnull, t.typndims, bt.typname AS basetype, n.nspname, btn.nspname AS btnsname, infn.nspname AS infnsp, oufn.nspname AS outfnsp, t.typtypmod, etn.nspname AS etnsp, ctr.relkind FROM pg_type t LEFT OUTER JOIN pg_user u ON t.typowner = u.usesysid LEFT OUTER JOIN pg_description ds ON ds.objoid = t.oid LEFT OUTER JOIN pg_type et ON t.typelem = et.oid INNER JOIN pg_namespace n ON t.typnamespace = n.oid LEFT OUTER JOIN pg_type bt ON t.typbasetype = bt.oid LEFT OUTER JOIN pg_namespace btn ON bt.typnamespace = btn.oid LEFT OUTER JOIN pg_proc inf ON t.typinput = inf.oid LEFT OUTER JOIN pg_namespace infn ON inf.pronamespace = infn.oid LEFT OUTER JOIN pg_proc ouf ON t.typoutput = ouf.oid LEFT OUTER JOIN pg_namespace oufn ON ouf.pronamespace = oufn.oid LEFT OUTER JOIN pg_namespace etn ON et.typnamespace = etn.oid LEFT OUTER JOIN pg_class ctr ON t.typrelid = ctr.oid WHERE t.typisdefined = 't'ORDER BY lower(t.typname) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2003, 09:59 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
select * from pg_tables ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2003, 18:50 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Господа и очередной вопрос: а можно каким-то образом столбцам дать русские удобочитаемые названия? Есть вот например возможность столбцам создавать коментарии, но как их потом получить я что-то не нашёл. :-(( И ещё ни кто не сталкивался с созданием процедур на PLPerl? Что-то похоже на то что в Postgres не работают шаблоны... То есть попытка выполнить "m/\d/", допустим ни чем не заканчивается... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2003, 10:55 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Столбцам давать русские имена крайне нежелательно. Нет гарантии, что вся котовасия из "продукты", "ид_продукта", "имя_продукта" и т.п. не слетит к бениной маме впоследствии, да и все нюансы с кодировкой не просчитаешь. Возможно, грабли будут с последующими обновлениями СУБД. Так что не стОит. Описания вытаскиваются различными способами. Например, через функцию obj_description(), где аргументами служат oid'ы объектов (таблиц, полей, последовательностей и т.п.). Или, например, поля (и не только) можно вытащить из системной таблицы pg_description, примерно таким запросом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
В общем, решения есть. Но в их число именование объектов БД на русском языке не входит, ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2003, 12:18 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Спасибо за содержательный ответ. Есть теперь над чем помыслить. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.09.2003, 13:17 |
|
Как получить наименование столбцов определённой таблицы?
|
|||
---|---|---|---|
#18+
Господа, а подскажите опять убогому: можно ли вышеприведённый запрос как-то универсализировать? То есть чтобы он срабатывал как в том случае когда есть дескрипшин у аттрибута, так и в том когда его нет? Пока он вывод только те столбцы к которым существует дискрипшин. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2003, 18:44 |
|
|
start [/forum/topic.php?fid=53&msg=32257254&tid=2008074]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
3ms |
others: | 322ms |
total: | 497ms |
0 / 0 |