Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.02.2005, 19:57
|
|||
|---|---|---|---|
|
|||
ограничения вместо триггеров |
|||
|
#18+
Раньше работал на psql версии 7.2.1 Там при создании таблицы, например так: create table ...( ... client_id int2 not null references client(id), ... ); автоматически создавался триггер, который поддерживал целостность. соответственно в описании таблицы (которое \d table) Выводились строки типа "RI_ConstraintTrigger_8685160" AFTER INSERT OR UPDATE ON voip_rekv FROM clients NOT DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE "RI_FKey_check_ins"('<unnamed>', 'voip_rekv', 'clients', 'UNSPECIFIED', 'client_id', 'id') Сейчас перешел на 7.4.6, и при создании таблиц таким же кодом, создаются просто внешние ограничения, и в описании таблицы выводится такие строки: "$1" FOREIGN KEY (client_id) REFERENCES clients(id) Можно ли настроить Postgres, чтобы он работал как раньше? Причина: при старом варианте спокойно работало truncate, если целостность не нарушается. а при новом варианте truncate пишет ошибку, типа на эту таблицу ссылаются, поэтому truncate не разрешен. Хотя ссылающаяся таблица пустая! Помогите, плиз!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
09.02.2005, 10:54
|
|||
|---|---|---|---|
ограничения вместо триггеров |
|||
|
#18+
а truncate cascade (по аналогии с drop ... cascade) не пробовал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.02.2005, 09:03
|
|||
|---|---|---|---|
|
|||
ограничения вместо триггеров |
|||
|
#18+
Ага, я уже разобрался. просто truncate не работает в таблицах, где есть внешние ключи. Так что буду удалять строки командой delete * from <table> Скорость в данном случае для меня не важна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.02.2005, 09:04
|
|||
|---|---|---|---|
|
|||
ограничения вместо триггеров |
|||
|
#18+
D.mon - Это я (зарегистрировался) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.04.2007, 16:52
|
|||
|---|---|---|---|
|
|||
ограничения вместо триггеров |
|||
|
#18+
Скрябин ДмитрийАга, я уже разобрался. просто truncate не работает в таблицах, где есть внешние ключи. Так что буду удалять строки командой delete * from <table> Скорость в данном случае для меня не важна Работает. Просто надо делать truncate общий: TRUNCATE TABLE table1, table2, ........, tableN; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=53&mobile=1&tid=2005539]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
90ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 266ms |
| total: | 466ms |

| 0 / 0 |
