Oracle: уникальный ключ и первичный ключ - PullRequest
1 голос
/ 24 декабря 2010

Рассмотрим таблицу, которая содержит уникальный ключ и первичный ключ. Таблицы уже содержат данные. Если я добавил какие-либо строки в таблицу, я получил ошибку (ORA - 0001), которая из-за дублирования значения добавляется к первичному ключу. или уникальный ключ. Здесь я не могу определить, связана ли ошибка с добавлением дублирующего значения к первичному ключу или уникальному ключу. Кто-нибудь может мне подсказать, как это определить?

Ответы [ 2 ]

4 голосов
/ 24 декабря 2010

Формат сообщения ORA-00001 :

ORA-00001: уникальное ограничение нарушено (string.string)

, где string.string равно schema.constraint_name. Вот почему рекомендуется давать нашим ограничениям полезные имена.

create table t23
   ( id number not null
     , col1 varchar2(30)
     , col2 date
     , constraint t23_pk primary key (id)
     , constraint t23_uk unique (col1)
  )
/
2 голосов
/ 24 декабря 2010

Ошибка отображает ограничение, которое было нарушено. Сообщение shd выглядит так:

ORA-00001: уникальное ограничение (string.string) нарушено

где (string.string) будет именем ограничений

...