mysql - 无法添加外键 SQL fiddle

标签 mysql foreign-keys

我的表中的外键有问题。如果有人能指出错误,请指出,我不知道它是什么。

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;

就我而言,我的数据类型很好。

感谢您的帮助。

最佳答案

修复下面第一个表中的拼写错误额外逗号后,只需按相反的顺序执行即可。

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;

关于mysql - 无法添加外键 SQL fiddle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40594253/

相关文章:

php - 如何查询多对多

MySQL - 将外键添加到现有表

mysql - 在表中设置多个外键而仅引用一个表时出现问题

mysql 表单元数据

mysql - 定义外键时遇到问题 (MySQL)

使用外键从另一个表获取条目的 mySQL?

python - Django:如何获取外键ID?

java - JDBC+MySQL : Retry transaction in case of lockwait or deadlock

php - 我是否继续在 php/mysql、phpMyAdmin 中正确编码编辑和删除功能

php - 对大量数据使用 3 个变量