Должен ли я индексировать столбцы первичных ключей в Oracle

Недавно я перестал думать, что первичные ключи не являются индексами, они представляют собой комбинацию ограничений Unique и Null. И до сих пор я никогда не создавал индекс для столбцов PK. Мой вопрос в том, должен ли я создавать индекс для столбцов PK, если этот столбец будет использоваться в части WHERE из многих запросов.

Ответ 1

Oracle создаст для вас индекс или может использовать существующий. Независимо от того, используется ли уникальный или не уникальный индекс, зависит от вас.

http://docs.oracle.com/cd/B28359_01/server.111/b28310/indexes003.htm#i1006566

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

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