Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Помогите с FOREIGN KEY (AEV) 16/05/2006 - 16:23:00
      Re: Помогите с FOREIGN KEY (AEV) 24/05/2006 - 16:14:08
      Re: Помогите с FOREIGN KEY (Tal) 02/06/2006 - 18:01:12
      Re: Помогите с FOREIGN KEY (SergYar) 15/06/2006 - 09:08:16
      Re: Помогите с FOREIGN KEY (AEV) 03/07/2006 - 20:09:16
      Re: Помогите с FOREIGN KEY (guest) 16/02/2007 - 18:30:06

> Original message text:
> From: AEV - 16/05/2006 - 16:23:00
> Subject:Помогите с FOREIGN KEY
> -----------------
> На сервере стоит MySQL 5.1.7-beta.
> Есть 2 таблицы:
> 1-я
> CREATE TABLE `klient_plat` (
> `id` int(11) NOT NULL auto_increment,
> `id_kl` int(11) unsigned default NULL,
> `id_ag` int(3) default '0',
> `klient_fullname` varchar(255) character set latin1 default NULL,
> PRIMARY KEY (`id`),
> UNIQUE KEY `id` (`id`),
> KEY `id_ag` (`id_ag`),
> KEY `id_kl` (`id_kl`),
> CONSTRAINT `klient_plat_fk` FOREIGN KEY (`id_ag`) REFERENCES `vm_agents` (`id_ag`) ON DELETE CASCADE ON UPDATE CASCADE
> ) ENGINE=InnoDB DEFAULT CHARSET=cp1251 ROW_FORMAT=DYNAMIC;
>
> 2-я
> CREATE TABLE `klient_sub` (
> `id` int(11) NOT NULL auto_increment,
> `id_kl` int(11) unsigned default NULL,
> `klient_name` varchar(255) default NULL,
> PRIMARY KEY (`id`),
> UNIQUE KEY `id` (`id`),
> KEY `id_kl` (`id_kl`)
> ) ENGINE=InnoDB DEFAULT CHARSET=cp1251 ROW_FORMAT=DYNAMIC;
>
> 1-я имеет внешний ключ к другой родительской таблице по полю `id_ag`.
>
> На
> ALTER TABLE `klient_sub` ADD CONSTRAINT `fk_klient_sub`
> FOREIGN KEY (`id_kl`)
> REFERENCES `klient_plat` (`id`);
> ключ не создается, хотя никаких ошибок не выдается и получаю сообщение:
> /* Результат : "запрос успешен, 0 строк задействовано (0,00 сек)" */
>
> Помогите пожалуйста. В какую сторону двигаться?
>


From: AEV - 03/07/2006 - 20:09:16
Subject:Помогите с FOREIGN KEY
-----------------
Спасибо!
Я уж и не ожидал, что кто-то откликнется :)
Я решил проблему несколько иначе (для себя неожиданно).
При создании поля `id` автоматом проставляется -- int(11).
После замены на int(10) в обеих таблицах в нужных полях вдруг все чудесным образом заработало.
Хотя вариант с дефолтными нулями тоже надо будет посмотреть...
Еще раз спасибо.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
30736



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |