Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вторичный ключ MySQL, Не могу создать вторичный ключ 
:(
    Опции темы
SnowyWhite
Дата 2.11.2013, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 20.1.2012

Репутация: нет
Всего: нет



есть две таблицы:
Код

CREATE TABLE `Transportation` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `from` int(11) DEFAULT NULL,
  `to` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `from` (`from`),
  KEY `to` (`to`),
  CONSTRAINT `transportation_ibfk_2` FOREIGN KEY (`to`) REFERENCES `Issuing office` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `transportation_ibfk_1` FOREIGN KEY (`from`) REFERENCES `Issuing office` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Код

CREATE TABLE `CurrentTransportetion` (
  `ID` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `transportation` int(11) NOT NULL,
  `car` int(11) NOT NULL,
  PRIMARY KEY (`ID`),
  KEY `car` (`car`),
  CONSTRAINT `currenttransportetion_ibfk_1` FOREIGN KEY (`car`) REFERENCES `Transport` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

пытаюсь создать вторичный ключ:
Код

ALTER TABLE `CurrentTransportetion`
ADD FOREIGN KEY (`transportation`)
REFERENCES `Transportation`(`id`);

получаю ошибку:
Can't create table 'fedex corporation.#sql-124_29' (errno: 150)

что не так делаю?
на других таблицах все связи нормально создались.
заранее спасибо
PM MAIL   Вверх
NetJunky
Дата 3.11.2013, 05:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 277
Регистрация: 11.5.2008
Где: Tallinn

Репутация: нет
Всего: 0



Для начала, не достаточно информации. Где таблицы на которые происходит ссылка в внешних ключах? Также, что сразу бросается в глаза, так это то что, в последнем запросе попытка установить внешний ключ, где описания полей не совпадают.

Код

ALTER TABLE `CurrentTransportetion`ADD FOREIGN KEY (`transportation`)REFERENCES `Transportation`(`id`);


Код

CREATE TABLE `Transportation` (  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,


Код

CREATE TABLE `CurrentTransportetion` (  `ID` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `transportation` int(11) NOT NULL,


Кто будет указывать, что поле `transportation` должно быть unsigned?

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL WWW ICQ Skype MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0709 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.