2016-06-01 2 views
0

Использование Oracle Database 11g Express EditionORA-00904: "INSURER_NO": недопустимый идентификатор

Это создает мой Car_Asset Таблица:

CREATE TABLE Car_Asset 

(Car_No SMALLINT, 

Registration_No CHAR(16), 

Mileage INTEGER, 

Date_MOT_Due DATE, 

Condition VARCHAR(20), 

CONSTRAINT car_pk PRIMARY KEY (Car_No,Registration_No)); 

Это создает свою Страховщику таблицу:

CREATE TABLE Insurer 

(Insurer_No SMALLINT, 

Insurer_Name VARCHAR(50), 

Insurer_Address VARCHAR(100), 

CONSTRAINT ins_pk PRIMARY KEY (Insurer_No)); 

I хотите добавить Insurer_No в качестве внешнего ключа в таблице Car_Asset.

Здесь я получаю ОР-00904: "INSURER_NO": неверный идентификатор:

ALTER TABLE Car_Asset 

ADD CONSTRAINT Car_Ins_fk 

FOREIGN KEY (Insurer_No) 

REFERENCES Insurer(Insurer_No); 

ответ

3

Добавление ограничений не добавляет столбца. Так что либо добавить Insurer_No к столу или использовать alter table:

alter table add insurer_no smallint; 

Затем вы можете добавить ограничение.

Смежные вопросы