2013-06-18 7 views
2

Я использую базу данных Oracle, и у меня есть таблица для записей клиентов и вы хотите установить ограничение на уникальные ключи для нескольких столбцов varchar2. как. У уникального ограничения на несколько столбцов есть проблемы с производительностью -Oracle

CUST_ID (Number),

CUST_Name(varchar2), 

Cust_N.I.C_NO(varchar2) сделает уникальный ключ.

при вводе новой записи через формы 6i, если приходит ошибка ORA-00001, пользователь будет проинформирован о том, что это была запись DUPLICATED.

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

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

Отношения.

+0

Вы указываете три столбца и говорите, что они «сделают уникальный ключ». Вы имеете в виду три уникальных ключа? Потому что они кажутся странными кандидатами на один сложный ключ. – APC

+0

Это абсолютно лучший способ избежать вставки повторяющихся записей. –

ответ

7

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

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

+0

Спасибо APC. очень признателен – user1115284

 Смежные вопросы

  • Нет связанных вопросов^_^