2011-12-20 4 views
1

У меня возникла проблема при запуске следующего скрипта в mysql 5.0.92. Я знаю, что есть проблема с индексами, но не могу понять это. Любая помощь очень понравиласьиндекс не работает с innodb

CREATE TABLE Foundation (
MemberID INT NOT NULL AUTO_INCREMENT, 
MemberCategory VARCHAR(45) NOT NULL, 
Invitation TINYINT(1) NULL, 
Accepted TINYINT(1) NULL, 
PersonID INT NOT NULL, 
PRIMARY KEY (MemberID), 

INDEX (PersonID) 
FOREIGN KEY (PersonID) REFERENCES Persons (PersonID) 
ON DELETE NO ACTION 
ON UPDATE NO ACTION) 


ENGINE = InnoDB 
DEFAULT CHARACTER SET = utf8 
COLLATE = utf8_general_ci; 
+1

Где находитс определение 'Person'? – piotrekkr

+0

Какая у вас проблема? –

ответ

1

У вас пропавшая запятая сразу после INDEX (PersonID). Внешний ключ должен иметь одно и то же определение в обеих таблицах.

Так PersonId должен иметь такое же определение в таблице Лица:

PersonID INT NOT NULL,

Даже микроскопические изменения, как беззнаковое получит вам 150 errorno.

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