1
ここで間違っていることを確認するには、目が新鮮なペアが必要です。同じ問題を抱えている他の人々からMysqlエラー:1215外部キー制約を追加できません[外部キーと同じタイプ、innodb]
CREATE TABLE IF NOT EXISTS `spring_normalize`.`users` (
`username` VARCHAR(60) NOT NULL,
`password` VARCHAR(80) NULL,
`authority` VARCHAR(45) NULL,
`name` VARCHAR(100) NULL,
`enabled` TINYINT(1) NULL,
`email` VARCHAR(60) NULL,
PRIMARY KEY (`username`))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `spring_normalize`.`offers` (
`id` INT NOT NULL AUTO_INCREMENT,
`text` VARCHAR(100) NULL,
`users_username` VARCHAR(60) NOT NULL,
PRIMARY KEY (`id`, `users_username`),
INDEX `fk_offers_users_idx` (`users_username` ASC),
CONSTRAINT `fk_offers_users`
FOREIGN KEY (`users_username`)
REFERENCES `spring_normalize`.`users` (`username`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
:
- は、DBのInnoDBですか?はい
- すべてのテーブルがInnoDBですか?はい
- 参照テーブルにユニークなインデックスがありますか?はい
- 参照されて参照する列は、まったく同じ型ですか?はい
質問どうすれば間違っているのですか?前もって感謝します!
を与えます[Can not repeat(http://sqlfiddle.com/#!2/d2f001)]は、作成されたspring_normalizeデータベースと完全なデータベース名でローカルに試しました。存在しない場合にのみ作成するため、以前の別の形式のテーブルは存在しませんか? –
コード - データベース名を除いたコード - SQL Fiddle:http://www.sqlfiddle.com/#!9/d2f00で問題なく動作します。 –
問題は再現できません。間違っています。それはMariaDB 10にも取り組んでいます。エラーは別のスクリプトからのものです。 – DanFromGermany