|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
Привет всем. С наступающим) Есть 2 view. Мне нужно данные с одной переписывать в другую. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
В первой view 69 записей допустим за 10ый месяц. Во второй уже записаны 69 за тот же месяц + добавлены еще 31 за 11ый. Так вот есть некоторые совпадения по полю KOD в 11 месяце. Пример на рисунках. Из за чего получаю ошибку: ORA-00001: нарушено ограничение уникальности. Подскажите , что нужно делать и почему такая процедура не перезаписывает данные ? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2018, 09:32 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2. 3. 4. 5. 6.
Oracle Doc PL/SQL Error Handling ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2018, 12:25 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
blvckvtvnv почему такая процедура не перезаписывает данные ? Ангел-хранитель у тебя норм. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2018, 14:33 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
Посмотри структуру таблицы sap_send.zpl_bel , какие поля имеют уникальность , потом посмотри на то что и куда твоя процедура инсертит и ты увидишь что такое значение в этом поле уже имеется . Это и означает нарушение ограничение уникальности. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2018, 17:53 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
blvckvtvnv Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
Однако ты и наваял, используй MERGE . ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2018, 22:12 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
flexgenиспользуй MERGE .от dup_val_on_index не избавляет. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 00:05 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
blvckvtvnv Код: plsql 1. 2. 3. 4.
Уверены? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 05:40 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
andrey_anonymousУверены?Может v_ это вовсе не вью, а синоним на таблицу за дблинком. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2018, 07:09 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
У меня тоже вопрос по ORA-00001: unique constraint violated применительно к Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production. Есть таблица с уникальным ключом, состоящим из нескольких полей. Я туда добавлял записи, у которых одно из полей этого составного ключа было пусто (null). И это не вызывало ошибок. Потом почему-то это стало вызывать ошибку ORA-00001: unique constraint violated. Я обсудил это с коллегами, и было выдвинуто 2 предположения: 1) Это работало потому что раньше была версия Oracle 18.3. 2) Это работало потому что раньше был включён какой-то настроечный параметр СУБД. Действительно ли в Oracle есть настроечный параметр, который управляет появлением ошибки ORA-00001 для составных ключей, в том случае, если одно из полей этого составного ключа пусто (null)? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2021, 12:02 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
Pastic, имхо, в табличке есть строка с таким ключом зы из фич гляньте ignore_row_on_dupkey_index ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2021, 12:07 |
|
ORA-00001: нарушено ограничение уникальности
|
|||
---|---|---|---|
#18+
Pastic У меня тоже вопрос по ORA-00001: unique constraint violated применительно к Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production. Есть таблица с уникальным ключом, состоящим из нескольких полей. Я туда добавлял записи, у которых одно из полей этого составного ключа было пусто (null). И это не вызывало ошибок. Потом почему-то это стало вызывать ошибку ORA-00001: unique constraint violated. Я обсудил это с коллегами, и было выдвинуто 2 предположения: 1) Это работало потому что раньше была версия Oracle 18.3. 2) Это работало потому что раньше был включён какой-то настроечный параметр СУБД. Действительно ли в Oracle есть настроечный параметр, который управляет появлением ошибки ORA-00001 для составных ключей, в том случае, если одно из полей этого составного ключа пусто (null)? Если вы добавляли одну запись с NULL в одном из полей, это не нарушало ограничение целостности UNIQUE Но когда вы добавляете еще одну (вторую) такую запись, происходит нарушение. Если все поля составного уникального ключа будут NULL таких строк можно внести сколько угодно, поскольку в индексе, поддерживающем ограничение UNIQUE значения состоящие из одних NULL не хранятся. Здесь демонстрация Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86.
Скрипт приложен. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2021, 15:08 |
|
|
start [/forum/topic.php?fid=52&fpage=17&tid=1880120]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 149ms |
0 / 0 |