Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / получить sequence по имени таблицы / 8 сообщений из 8, страница 1 из 1
16.01.2007, 14:24
    #34258826
bla-bla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
Подскажите, можно ли, зная имя таблицы (и полей, на всякий случай), получить имена имеющихся там последовательностей? Есть такие данные/связи в системных таблицах?

Или есть просто сиквенсы сами по себе, а привязка их к определенным полям осуществляется посредством дефолтных значений соответствующих полей (serial это есть integer, который not null и default nextval(('public.имя_seq'::text)::regclass) )? То бишь, можно получить список всех сиквенсов из information_schema и надеяться на то, что обозваны они по умолчанию (таблица_поле_seq)?
...
Рейтинг: 0 / 0
16.01.2007, 14:33
    #34258868
ZemA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
...
Рейтинг: 0 / 0
16.01.2007, 14:50
    #34258948
bla-bla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
О, спасибо. Прозевал я что-то этот раздел в доках.
А можно еще вопросец? Можно у заданной таблицы получить список всех полей заданного типа? (8.2, oid-ами не пользуюсь).
...
Рейтинг: 0 / 0
16.01.2007, 14:57
    #34258978
st_serg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
bla-blaО, спасибо. Прозевал я что-то этот раздел в доках.
А можно еще вопросец? Можно у заданной таблицы получить список всех полей заданного типа? (8.2, oid-ами не пользуюсь).
можно
...
Рейтинг: 0 / 0
16.01.2007, 15:01
    #34258996
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
bla-blaМожно у заданной таблицы получить список всех полей заданного типа? (8.2, oid-ами не пользуюсь). Можно все поля заданной таблицы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select c.relname, a.attname, t.typname, a.atttypmod- 4  as atttypemod,
       d.description,
       (select d2.description from pg_description d2 
        where c.oid=d2.objoid and d2.objsubid= 0 ) as table_desc
from pg_class c  
LEFT JOIN pg_attribute a ON (c.oid=a.attrelid)
LEFT JOIN pg_description d ON (c.oid=d.objoid and a.attnum=d.objsubid)
LEFT JOIN pg_type t ON (a.atttypid=t.oid)
 where c.relkind='r' and a.attnum> 0  and a.atttypid<> 0  and c.relname = 'MY_TABLE'
order by c.relname, a.attnum;
Ограничение на тип - домашнее задание.
...
Рейтинг: 0 / 0
16.01.2007, 15:02
    #34259004
bla-bla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
можно вопрос задать, или можно получить имена колонок? ;)

Если второе, написали бы сразу как....
...
Рейтинг: 0 / 0
16.01.2007, 15:10
    #34259040
СергейК
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
bla-blaможно вопрос задать, или можно получить имена колонок? ;)
Если второе, написали бы сразу как....

Vse mojno legko poluchit' samomu.
Vkluchit' log_min_duration_statement = 0 v postgresql.conf , i posle etogo vypolnit'
\d your_table
i Vy srazu uvidite kakie zaprosy PG ispolniaet dlia poluchenia nazvanii, tipov kolonok indexov i t.p.

K slovu, dlia togo chtoby uznat' imena kolonok mojno eshe information_schema ispolzovat'
http://www.postgresql.org/docs/8.2/interactive/infoschema-columns.html
...
Рейтинг: 0 / 0
16.01.2007, 15:23
    #34259075
bla-bla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить sequence по имени таблицы
Все, разобрался. Всем спасибо!
Можно просто посмотреть объявление вьюхи columns из инфосхемы (\d information_schema.columns) и примерно вычленить кусок запроса, который нужен.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / получить sequence по имени таблицы / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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