2015-12-13 9 views
1

Я использую mysql версию 5.5. У меня есть две таблицы, и я привязывание, чтобы добавить внешний ключ constarint, но какой-то образом я получаю эту ошибку что-:Mysql: ошибка внешнего ключа

Query Я выполнение:

alter table ptcact add foreign key(ptcid) references ptccitation(ptcid); 

Ошибки я получаю:

ERROR 1005 (HY000): Can't create table 'ptc_journal.#sql-496_34' (errno: 150) 

Мои столы:

  1. ptccitaion с ptcid в качестве первичного ключа с storage engine = MyIsam
  2. ptcact с поддержкой оленьей кожи storage engine=InnoDB

ответ

1

MyISAM внешними ключами.

См mysql docs

+0

Я знаю, что, но мне нужно MyISAM для полной поддержки текста. Моя таблица ptccitation - MyIsam, но ptcact, в котором мне нужно принудительно использовать ограничение внешнего ключа, является InnoDB. Есть ли способ выполнить оба условия? @ardabeyazoglu – Deep

+1

Mysql 5.6 поддерживает полнотекстовый поиск innodb. Это ваш единственный вариант, если вы не хотите выполнять дополнительную работу. Или вы можете использовать стороннюю поисковую систему для полнотекстового поиска, например, sphinx и elasticsearch. Они гораздо более способны, чем myisam fulltext. – abeyaz

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