2011-12-20 55 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

'Persons'表的定義在哪裏? – piotrekkr 2011-12-20 17:51:05

+0

你有什麼問題? – 2011-12-20 17:51:11

回答

1

您在INDEX (PersonID)之後有一個缺失的逗號。外鍵在兩個表中必須具有完全相同的定義。

所以PERSONID必須在個人表相同的定義:

PersonID INT NOT NULL,

即使像無符號微小變化,會得到150 errorno。