2015-05-20 4 views
0

На https://stackoverflow.com/questions/10356484/how-to-add-on-delete-cascade-constraints#= пользователь, kgrittn, откомментировал говоря, чтоPostgresql и первичный ключ, внешний ключ индексации

Но я заметил, что вы не создали индексы ссылающихся столбцов ... Удаление на ссылочной таблицы будет принимать долгое время без них, если вы получите много строк в этих таблицах. Некоторые базы данных автоматически создают индекс в столбцах ссылок; PostgreSQL оставляет это до вас, поскольку есть случаи, когда это не стоит.

У меня возникли трудности с пониманием этого полностью. Он говорит, что первичные ключи не создаются автоматически с индексом или он говорит, что внешние ключи должны быть проиндексированы (в частности, это то, что есть). Я просмотрел документацию PostgreSQL, и из нее видно, что для первичных ключей автоматически создается индекс. Есть ли команда, которую я могу использовать для перечисления всех индексов?

Благодаря

+0

Комментарий относится к полям * ссылки * из справочной таблицы. * * Target * table и field (s) должны по крайней мере иметь уникальное ограничение. – wildplasser

ответ

2

Первичный ключ находится за кулисами особого рода уникального индекса. Цитата, ссылающаяся на то, что было бы неплохо создать индекс также в столбцах, где первичный ключ используется как внешний ключ.

+0

OK Спасибо, получилось – WraithWireless