powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / parent key not found!!! - а ключ ЕСТЬ
12 сообщений из 12, страница 1 из 1
parent key not found!!! - а ключ ЕСТЬ
    #32182189
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При очередной заливке данных вылезло

ORA-02291: integrity constraint (schema.constraint) violated - parent key not found

используется:
ORACLE 7.3.4.4; Delphi 7

Внешний ключ есть - проверено.
Эта ошибка вылезает только не на всех таблицах с внешним ключом.

Идет процесс разработки базы данных. Таблицы часто пересоздаются.

Как победить?
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182205
Алексей Филиппов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Внешний ключ есть ограничение целостности. Это все знают.
Просто в поле, на котором стоит внешний ключ ты пытаешся вставить значение, которого нет в PK, на который ссылается твой FK. Проверяй.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182214
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To: Алексей Филиппов

Ключ - ЕСТЬ!

Выполнял пошагово!

Перед выполнением INSERT, проверил, что будет вставляться.
Значение, которое вставляестся во внешней таблице - СУЩЕСТВУЕТ.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182235
va_kochnev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как проверял что существует ?
Если в состав ключа входит varchar2-столбец, то возможна нестыковка из-за наличия/отсутствия хвостовых пробелов хотя визуально все выглядит одинаково.
Аналогично если date-столбец видишь одинаковое число и не видишь, что есть разница в секундах.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182239
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To: va_kochnev

Вот такая структура моих таблиц:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
create table Parent(
  ParentID number( 16 ) not null,
  primary key (ParentID)
)

create table Child(
  ChildID number( 16 ) not null,
  ParentID number( 16 ) not null,
  primary key (ChildID),
  Foreign key (ParentID) References Parent
)


Если взять и создать сейчас аналогичные таблицы, то все работает.

Не работает на некоторых существующих таблицах.

Что там могло случиться.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182255
Chira
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Где ключ есть? в Delfi/BDE кэше?
Ты убедись, что ключ есть в базе.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182263
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to: Chira

Внешняя таблица УЖЕ ДАВНО ЗАПОЛНЕНА!

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

Могла ли эта проблема возникнуть из-за этого?
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182319
Chira
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если часто меняются объекты базы данных, естественно может возникнуть такая ошибка. Скажу больше может возникнуть даже не такая ошибка.

В этой ситуации трудно определить истинную причину ошибки.

По какой схеме вы закачиваете данные?
1. отключаем все индексы, констраинты ...
2. заливаем данные
3. восстанавливаем индексы
4. восстанавливаем констраинты. Здесь получаем ошибку?
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182367
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to: Chira

> 1. отключаем все индексы, констраинты ...
> 2. заливаем данные
> 3. восстанавливаем индексы
> 4. восстанавливаем констраинты

В данном случае не так.
В течении недели создавали удаляли все объекты.
Данные заливались в 6-7 таблиц.

Сегодня начали заливать данные в одну из существующих таблиц (ранее в нее не заливали). И вылезла такая зараза.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182385
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прощу прощения за длинный постинг.

Из-за чего так происходит я нашел.
НО почему так происходит?
В скрипте на создание таблиц (кстати: все генерится из ErWin) для одной из таблиц , которая в будущем будет PARENT есть такие строчки (выделены двоеточием):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CREATE TABLE schema.parent (
       ParentlID             NUMBER( 5 ) NOT NULL,
       DateFrom             DATE NULL,
       CONSTRAINT XPKPRIVEL 
              PRIMARY KEY (PrivelID)
:       USING INDEX
:  PCTFREE  10 
:    INITRANS  2 
:   MAXTRANS  255 
:    STORAGE  (
:   INITIAL  131072 
:   NEXT  131072 
:   MINEXTENTS  1  
:   MAXEXTENTS  4096  
:   PCTINCREASE  0  
:   FREELISTS  1  
:   FREELIST GROUPS  1  
:  )
:  REVERSE


если их убрать то все работает.

Расскажите в чем дело или куда смотреть.
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182390
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Strange. Why ErWin decides to create REVERSE index for PK. But what is even stranger how such script runs on ORACLE 7.3.4.4 without an error since ORACLE 7.3.4.4 does not have REVERSE index feature. Try to commect out just REVERSE. See what happens.

SY
...
Рейтинг: 0 / 0
parent key not found!!! - а ключ ЕСТЬ
    #32182399
Dmitri Krizhanovski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to: SY

Спасибо.

Мои поиски о ожидания подтвердились.

В документации я не нашел того, что дописывает ErWin.
А скрипт успешно выполняется:(

Если убрать лишние прибамбасы, то все выполняется отлично.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / parent key not found!!! - а ключ ЕСТЬ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]