1

私が行ってきたように、Workbench データベースをフォワード エンジニアリングしようとしています。今回は違いましたが、正常に動作する代わりに、奇妙なエラーが発生しました。

Error Code: 1005. Can't create table '~~~~~~~~~~~~~~~~~~~' (errno: -1)

errno -1 を検索してみましたが、うまくいきませんでした。このエラーメッセージが何を伝えようとしているのか、誰にも分かりますか?

CREATE  TABLE IF NOT EXISTS `database`.`User` (

`Uid` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT ,

`Username` VARCHAR(45) NOT NULL ,

`Password` TINYTEXT NOT NULL ,

`Avatar` TINYTEXT NULL ,

`Status` CHAR(6) NOT NULL DEFAULT 'Active' COMMENT 'Active, Warned, Banned' ,

 PRIMARY KEY (`Uid`) )

  ENGINE = InnoDB;

それには他の部分がありますが、テーブルの作成を通過することさえできません。DB名も変更しました。スペルが正しいことは間違いありません。

4

1 に答える 1

3

を削除して、 SQL Fiddledatabase.でクエリを実行するだけで動作します。

CREATE  TABLE IF NOT EXISTS `User` (

`Uid` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT ,

`Username` VARCHAR(45) NOT NULL ,

`Password` TINYTEXT NOT NULL ,

`Avatar` TINYTEXT NULL ,

`Status` CHAR(6) NOT NULL DEFAULT 'Active' COMMENT 'Active, Warned, Banned' ,

 PRIMARY KEY (`Uid`) )

  ENGINE = InnoDB;

それが言うようにInnoDBエラーコードを見てください:

Error 1005 (ER_CANT_CREATE_TABLE)

Cannot create table. If the error message refers to error 150, table creation failed because a foreign key constraint was not correctly formed.
If the error message refers to error –1, table creation probably failed because the table includes a column name that matched the name of an internal InnoDB table. 
于 2013-03-01T08:04:07.847 に答える