|
ENABLE NOVALIDATE
|
|||
---|---|---|---|
#18+
В чём может быть причина, что alter table TABLE enable novalidate UNIQUE (COL1, COL2) ; выдаётся сообщение " duplicate keys found" хотя на других базах всё OK Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2002, 16:25 |
|
ENABLE NOVALIDATE
|
|||
---|---|---|---|
#18+
Попробуй так: SELECT col1, col2, cnt FROM (SELECT col1, col2, count(*) cnt FROM <table> GROUP BY col1, col2) t1 WHERE t1.cnt > 1; И убедись, что нт записей в этом запросе. Своеобразная проверка на уникальность ключей в индексе. Насколько мне извесно и понятно... ну не позволит Оракул сделать уникальный индекс по неуникальному критерию ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2002, 17:26 |
|
ENABLE NOVALIDATE
|
|||
---|---|---|---|
#18+
ENABLE NOVALIDATE как раз и даёт возможность включить constraint не проверяя данные, т.е в данном случае что бы комбинация col1 b col2 была не уникальной. Есть подозрения что причина в разнице версий oracle server. Может у кого была подобная проблема, как с этим боротся ? " ENABLE NOVALIDATE ensures that all new insert, update, and delete operations on the constrained data comply with the constraint. Oracle does not verify that existing data in the table complies with the constraint." ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2002, 07:28 |
|
|
start [/forum/topic.php?fid=52&msg=32023680&tid=1993423]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 124ms |
0 / 0 |