ORA-00904: "CITYCODE": неверный идентификатор в CREATE TABLE
Итак, я не очень хорошо с sql и пытаюсь использовать две великолепные таблицы. один называется CITY с PK Citycode и Warehouse, который использует Citycode в качестве FK. И я не удивлен, если даже это не так.
Это мои два запроса CREATE:
CREATE TABLE City
(
citycode number(2),
cityname varchar2(30),
Population number(7),
Primary Key (citycode)
);
CREATE TABLE Warehouse
(
whid number(2),
address varchar2(30),
capacity number(7),
capacity_used number(7),
mgrname varchar2(30),
mgrgender varchar2(1),
Primary Key (whid),
Foreign Key (citycode) REFERENCES City
);
Затем, когда я запускаю их в iSQL, я получаю ошибку ORA-00904: "CITYCODE": неверный идентификатор. Все, что я могу найти об этой ошибке, с помощью операторов SELECT.
Спасибо:)
1 ответ
Вам нужно создать столбец, который ссылается на другую таблицу. подобно
CREATE TABLE City
(
citycode number(2),
cityname varchar2(30),
Population number(7),
constraint city_pk
PRIMARY KEY (citycode)
);
CREATE TABLE Warehouse
(
whid number(2),
address varchar2(30),
capacity number(7),
capacity_used number(7),
mgrname varchar2(30),
mgrgender varchar2(1),
citycode number(2), <-- note this one
constraint warehouse_pk
PRIMARY KEY (whid),
constraint warehouse_fk
FOREIGN KEY (citycode)
REFERENCES City (citycode)
);