Таблица друзей социальных сетей - Объяснить план - Ошибка Не удалось включить ограничение ограничений - PullRequest
0 голосов
/ 28 сентября 2011

У меня есть структура таблицы ниже для таблицы друзей

КОНСТРУКЦИЯ СТОЛА

CREATE TABLE `my_friends` (
  `first_user_id` int(10) unsigned NOT NULL,
  `second_user_id` int(10) unsigned NOT NULL,
  `approved` tinyint(1) NOT NULL DEFAULT '0',
  `request_sent` int(10) unsigned DEFAULT NULL,
  `request_approved` int(10) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

и

DATA

insert into `my_friends` values (4,1,1,null,null);
insert into `my_friends` values (7,8,1,null,null);
insert into `my_friends` values (1,7,1,null,null);
insert into `my_friends` values (2,7,1,null,null);
insert into `my_friends` values (4,2,1,null,null);

Чтобы получить всех друзей с идентификатором пользователя "1", я запускаю следующий запрос

ЗАПРОС ПОЛУЧИТЬ ДРУЗЕЙ

SELECT  first_user_id user_id, second_user_id friend_id  from my_friends where first_user_id=1 and approved=1
union
SELECT  second_user_id user_id ,first_user_id friend_id from my_friends where second_user_id=1 and approved=1

и когда я проверяю план объяснения для этого, это выдает

ОБЪЯСНИТЬ ОШИБКУ ПЛАНА

Error
Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

Я использую этот запрос в большинстве запросов как подзапрос, и этот вызывает проблему, чтобы проверить план объяснения для всех других запросов

1 Ответ

0 голосов
/ 11 октября 2011

Это проблема с Mysql и возникла с mysql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...