From: | eshkinkot(at)gmail(dot)com ( Сергей Бурладя =?utf-8?B?0L0=?=) |
---|---|
To: | "Dmitry E(dot) Oboukhov" <unera(at)debian(dot)org> |
Cc: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | Re: Чистка таблиц |
Date: | 2012-01-07 20:53:41 |
Message-ID: | 87obuf2q0a.fsf@home.progtech.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-ru-general |
"Dmitry E. Oboukhov" <unera(at)debian(dot)org> writes:
> Имеются таблицы
>
> |t1_id|...|
> |t2_id|t1_id|...|
> |t3_id|...|
> |t4_id|t1_id|t3_id|...|
>
> То есть таблички с форейгнами.
>
> Объявлены столбики связей так:
>
> t1_id INTEGE REFERENCES t1 (t1_id) ON DELETE CASCADE ON UPDATE
> CASCADE;
foreign key не создают индексы, у Вас созданы на каждой таблице индексы по foreign key?
> План показывает примерно такой:
>
> QUERY PLAN
> ----------------------------------------------------------------------------------------
> Delete on t1 (cost=0.00..8.59 rows=1 width=6)
> -> Index Scan using t1_pkey on t1 (cost=0.00..8.59 rows=1 width=6)
> Index Cond: (id = 2919364)
> (3 rows)
А какая версия сервера? Здесь скорее всего не показываются вызовы служебных триггеров foreign key
в которых возможно при отсутствии индексов по t1_id проверка и обновление внешних ключей идёт
по seq scan.
--
С уважением, Сергей Бурладян
From | Date | Subject | |
---|---|---|---|
Next Message | Сергей Бурладя =?utf-8?B?0L0=?= | 2012-01-07 21:07:52 | Re: Таблицы с взаимными связями |
Previous Message | Anton Krasikov | 2012-01-07 11:36:12 | Re: [pgsql-ru-general] Re: [pgsql-ru-general] Re: [pgsql-ru-general] Re: [pgsql-ru-general] Чистка таблиц |