2016-04-09 12 views
-1

私は、テーブルを作成しようとしましたが、私ははあなたの助けが必要:MYSQL ERROR 1215(HY000):外部キー制約を追加することはできません

MySQLエラー1215(HY000)を得た:

外部キー制約を追加することはできません

。コードは次のとおりです。

DROP SCHEMA IF EXISTS `users`; 
CREATE SCHEMA `users`; 

USE `users`; 

DROP TABLE IF EXISTS `useraccount`; 
DROP TABLE IF EXISTS `userinfo`; 

CREATE TABLE `account` (
    `uid` BIGINT unsigned NOT NULL AUTO_INCREMENT, 
    `uname` VARCHAR(50) NOT NULL, 
    `passwd` VARCHAR(20) NOT NULL, 
    PRIMARY KEY(`uid`) 
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; 

CREATE TABLE `info` (
    `uid` BIGINT unsigned ZeroFill NOT NULL, 
    `rname` VARCHAR(10) NOT NULL, 
    `phone` VARCHAR(15) NOT NULL, 
    `email` VARCHAR(50) NOT NULL, 
    UNIQUE KEY `uid` (`uid`), 
    CONSTRAINT `fkinfo` FOREIGN KEY (`uid`) REFERENCES `userAccount`(`uid`) ON DELETE CASCADE ON UPDATE CASCADE 
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1; 

ご意見をお寄せください。

+0

テーブルuseraccountを持っていませんが、アカウント – Mihai

+0

テーブル* useraccount *への外部キー参照を作成することはできません。テーブルの名前は* account *です。問題は単なる表記の誤った表記(誤植)であるため、投票を終了することになります。そのため、将来的には他の人にはゼロの使用になるでしょう。 –

答えて

0

私はuserAccountテーブルが表示されません。おそらく、あなたはAccountテーブルをつもり:

CONSTRAINT `fkinfo` FOREIGN KEY (`uid`) REFERENCES `Account`(`uid`) ON DELETE CASCADE ON UPDATE CASCADE 

HereはSQLフィドルです。

+0

ああ.... QAQ ...それに気付かなかった。常に構文エラーを見つけようとしました。ありがとう! – Geoferry

関連する問題