2014-11-26 6 views
0

У меня есть таблица с именем ITEM с идентификаторами полей, TYPE, DES, SIZE, теперь я хочу добавить внешний ключ из другой таблицы AISLE, в которой есть поле AISLE_ID, X, Y, WIDTH, HEIGHT. Теперь я хочу, чтобы AISLE_ID был внешним ключом в таблице ITEM. Я использовал это заявление, но говорит, что AISLE_ID не распознается. Это заявление, которое я использовалAlter Table With Foreign Key

ALTER table ITEM 
ADD FOREIGN KEY AISLE_ID(AISLE_ID) 
REFERENCES AISLE(AISLE_ID) 
ON DELETE NO ACTION 
ON UPDATE CASCADE; 

Любая помощь, спасибо заранее.

+0

Does столбцы «AISLE_ID» существуют в обеих таблицах ?! – RandomSeed

+0

Нет, это не так! Это только в таблице AISLE. Но я попытался добавить AISLE_ID, но это дало мне другое исключение !!! –

ответ

0

Изменить ALTER заявление быть как ниже, так как есть только соответствие столбец в ITEM на AISLE_ID определения типа в AISLE; рассмотреть вопрос о внесении ID столбца в ITEM таблице быть внешним ключом

ALTER TABLE ITEM ADD CONSTRAINT fk_AISLE_ID 
FOREIGN KEY (ID) references AISLE(AISLE_ID) 
ON DELETE NO ACTION 
ON UPDATE CASCADE; 

Вы можете так же ALTERITEM таблицы и добавить столбец с именем AISLE_ID, а затем создать внешний ключ на нем, как

ALTER TABLE ITEM ADD AISLE_ID INT NOT NULL; 

ALTER TABLE ITEM ADD CONSTRAINT fk_AISLE_ID 
FOREIGN KEY (AISLE_ID) references AISLE(AISLE_ID) 
ON DELETE NO ACTION 
ON UPDATE CASCADE; 
+0

не работает !! # 1072 - Ключевой столбец «AISLE_ID» не существует в таблице –

+0

, это здорово, тогда как вы можете добавить ограничение на это. Подумайте о предоставлении всей необходимой информации в своем сообщении. Дать структуру таблицы для таблицы 'ITEM' – Rahul

+0

MY элемент таблицы состоит эта структура, CREATE TABLE ITEM ( ID INT NOT NULL, \t ТИП VARCHAR (32) NOT NULL, ОПИСАНИЕ VARCHAR (64) NOT NULL, РАЗМЕР НЕ ПОПЛАВКОВЫЕ NULL, то size_type УАКСНАК (4) NOT NULL, ИЗГОТОВЛЕНИЕ VARCHAR (16) NOT NULL, РАЗДЕЛ VARCHAR (16) NOT NULL, ЦЕНА ПОПЛАВКОВЫЕ NOT NULL, УРОВЕНЬ INT (1) NOT NULL, ПЕРВИЧНЫЙ КЛЮЧ (ID) , –

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