Я использую DBVisualizer для извлечения DDL из базы данных Oracle 10.2. Я получаю нечетные экземпляры повторяющихся столбцов в ограничениях или повторяющиеся ограничения в сгенерированном DDL. Сначала я записал ошибку в DBVisualizer, но я попытался использовать Apache DDLUtils против БД, и он начал бросать ошибки, которые, как выяснилось, были вызваны одной и той же проблемой. Метаданные таблицы, возвращаемые Oracle, по-видимому, содержат несколько записей для некоторых ограничений FK.Почему оракул извергает плохие таблицы метаданных?
Я не могу найти ссылку на подобные вещи из моих поисковых запросов Google, и мне было интересно, видел ли кто-нибудь еще одно и то же. Является ли это ошибкой в драйвере Oracle или метаданные содержат дополнительную информацию, которая удаляется, когда мои инструменты обращаются к ней, что приводит к путанице со стороны инструментов ...
Вот пример (усеченный) DDL выход из
CREATE TABLE ARTIST
(
ID INTEGER NOT NULL,
FIRST_NAME VARCHAR2(128),
LAST_NAME VARCHAR2(128),
CONSTRAINT ARTIST_ID_PK PRIMARY KEY(ID),
CONSTRAINT ARTIST_CONTENT_ID_FK FOREIGN KEY(ID, ID, ID) REFERENCES CMS_CONTENT(CONTENT_ID, CONTENT_ID, CONTENT_ID)
-- note the multiple instances of ID and CONTENT_ID in the above line
-- rest assured there is nothing bizarre about the foreign table CMS_CONTENT
)
Я пытаюсь найти пример Java, который может показать поведение, и будет обновлять вопрос, когда у меня есть конкретный пример.
Я никогда не был в состоянии получить что-нибудь, но 31603 из GET_DDL() и получение разрешений изменены в этой системе является гигантская боль в заднице, но ЗЕЬЕСТ работы и, кажется, поддерживает ваше предположение , Угадайте, что мне придется записывать ошибку в DBVis и ddlutils. – Jherico