首页 >

mysql 怎么建外键 |mysql6.0安装1045

homebrew删除mysql,datax连接mysql失败,mysql拼接结果为json,mysql存储过程的execute,mysql优化复杂查询,mysql6.0安装1045mysql 怎么建外键 |mysql6.0安装1045

1. 创建主表和从表

CREATE TABLE `tb_department` (
`dept_id` int(11) NOT NULL AUTO_INCREMENT,
`dept_name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`dept_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `tb_employee` (
`emp_id` int(11) NOT NULL AUTO_INCREMENT,
`emp_name` varchar(50) DEFAULT NULL,
`dept_id` int(11) DEFAULT NULL,
PRIMARY KEY (`emp_id`),
KEY `dept_id` (`dept_id`),
CONSTRAINT `tb_employee_ibfk_1` FOREIGN KEY (`dept_id`) REFERENCES `tb_department` (`dept_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

这里创建了两个表,tb_department作为主表,tb_employee作为从表。tb_department中dept_id为主键,tb_employee中dept_id为外键,关联到tb_department的dept_id字段上。注意,引擎类型需选择InnoDB,因为只有InnoDB支持外键。

2. 建立外键

ALTER TABLE `tb_employee` ADD CONSTRAINT `tb_employee_ibfk_1` FOREIGN KEY (`dept_id`) REFERENCES `tb_department`(`dept_id`);

上面的代码可以来实现在已有表上添加外键约束。名为tb_employee_ibfk_1的约束,关联到tb_department的dept_id字段上。注意,如果已经有重名的外键约束,此语句执行会报错。

3. 删除外键

ALTER TABLE `tb_employee` DROP FOREIGN KEY `tb_employee_ibfk_1`;

删除外键时,需要指定外键的名称,使用DROP FOREIGN KEY语句即可。这里指定了tb_employee_ibfk_1作为外键名称。

总结:MySQL中建立外键需要考虑表之间的关系,主表和从表的字段要保持一致,必须使用InnoDB引擎,建立外键可以使用CREATE TABLE或ALTER TABLE语句,删除外键使用ALTER TABLE语句。


mysql 怎么建外键 |mysql6.0安装1045
  • mysql与组态王数据库与工业自动化的完美结合 |ssh框架连接mysql
  • mysql与组态王数据库与工业自动化的完美结合 |ssh框架连接mysql | mysql与组态王数据库与工业自动化的完美结合 |ssh框架连接mysql ...

    mysql 怎么建外键 |mysql6.0安装1045
  • MySQL数据路径迁移教程(一步步教你如何安全地转移数据) |mysql函数 split
  • MySQL数据路径迁移教程(一步步教你如何安全地转移数据) |mysql函数 split | MySQL数据路径迁移教程(一步步教你如何安全地转移数据) |mysql函数 split ...

    mysql 怎么建外键 |mysql6.0安装1045
  • MySQL大量数据写入优化方法分享 |启动mysql 错误3
  • MySQL大量数据写入优化方法分享 |启动mysql 错误3 | MySQL大量数据写入优化方法分享 |启动mysql 错误3 ...