2016-11-14 3 views
0

У меня проблемы с ключом foriegn в моей таблице. Если кто-нибудь может указать на ошибку, пожалуйста, я не знаю, что это такое.Невозможно добавить внешний ключ SQL-скрипт

CREATE TABLE IF NOT EXISTS `user_account` (
    `accountID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
    `username` VARCHAR(20) NOT NULL, 
    `typeID` int(10) UNSIGNED NOT NULL, 
    `email` VARCHAR(100) NOT NULL, 
    `password` VARCHAR(100) NOT NULL, 
    PRIMARY KEY (`accountID`), 
    FOREIGN KEY (`typeID`) REFERENCES account_type(`typeID`) 
) ENGINE = InnoDB; 

CREATE TABLE IF NOT EXISTS `account_type`(
    `typeID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
    `typeName` VARCHAR (20) NOT NULL, 
    `description` VARCHAR (255), 
    PRIMARY KEY (`typeID`), 
) ENGINE = InnoDB; 

Насколько я могу судить, мои типы данных в порядке.

Спасибо за помощь.

ответ

0

Просто выполните их в обратном порядке после того, как вы зафиксируете дополнительную запятую TYPO в первой таблице ниже.

CREATE TABLE IF NOT EXISTS `account_type`(
    `typeID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
    `typeName` VARCHAR (20) NOT NULL, 
    `description` VARCHAR (255), 
    PRIMARY KEY (`typeID`) 
) ENGINE = InnoDB; 


CREATE TABLE IF NOT EXISTS `user_account` (
    `accountID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
    `username` VARCHAR(20) NOT NULL, 
    `typeID` int(10) UNSIGNED NOT NULL, 
    `email` VARCHAR(100) NOT NULL, 
    `password` VARCHAR(100) NOT NULL, 
    PRIMARY KEY (`accountID`), 
    FOREIGN KEY (`typeID`) REFERENCES account_type(`typeID`) 
) ENGINE = InnoDB; 
+1

P.S. Это не сломает мое сердце, если вы просто удалите вопрос: p – Drew

+0

ah ... hahaha. Ура! –

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