当前第2页 返回上一页
在修改数据表时添加外键约束的语法规则为:
1 2 | ALTER TABLE <数据表名> ADD CONSTRAINT <索引名>
FOREIGN KEY (<列名>) REFERENCES <主表名> (<列名>);
|
示例:修改数据表 tb_emp2,将字段 deptId 设置为外键,与数据表 tb_dept1 的主键 id 进行关联,输入的 SQL 语句和运行结果如下所示。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | mysql> ALTER TABLE tb_emp2
-> ADD CONSTRAINT fk_tb_dept1
-> FOREIGN KEY (deptId)
-> REFERENCES tb_dept1(id);
Query OK, 0 rows affected (1.38 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> SHOW CREATE TABLE tb_emp2\G
*************************** 1. row ***************************
Table : tb_emp2
Create Table : CREATE TABLE `tb_emp2` (
`id` int (11) NOT NULL ,
` name ` varchar (30) DEFAULT NULL ,
`deptId` int (11) DEFAULT NULL ,
`salary` float DEFAULT NULL ,
PRIMARY KEY (`id`),
KEY `fk_tb_dept1` (`deptId`),
CONSTRAINT `fk_tb_dept1` FOREIGN KEY (`deptId`) REFERENCES `tb_dept1` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.12 sec)
|
删除外键约束
对于数据库中定义的外键,如果不再需要,可以将其删除。外键一旦删除,就会解除主表和从表间的关联关系,MySQL 中删除外键的语法格式如下:
1 | ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;
|
示例:删除数据表 tb_emp2 中的外键约束 fk_tb_dept1,输入的 SQL 语句和运行结果如下所示。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | mysql> ALTER TABLE tb_emp2
-> DROP FOREIGN KEY fk_tb_dept1;
Query OK, 0 rows affected (0.19 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> SHOW CREATE TABLE tb_emp2\G
*************************** 1. row ***************************
Table : tb_emp2
Create Table : CREATE TABLE `tb_emp2` (
`id` int (11) NOT NULL ,
` name ` varchar (30) DEFAULT NULL ,
`deptId` int (11) DEFAULT NULL ,
`salary` float DEFAULT NULL ,
PRIMARY KEY (`id`),
KEY `fk_tb_dept1` (`deptId`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.00 sec)
|
可以看到,tb_emp2 中已经不存在 FOREIGN KEY,原有的名称为 fk_emp_dept 的外键约束删除成功。
以上就是MySQL怎么设置外键约束?的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
mysql大于等于怎么写
mysql 8.0.14 安装配置方法图文教程(通用)
如何解决mysql个别文字乱码的问题
mysql安装后.net程序运行出错如何解决
mysql在cmd里中文乱码解决办法
windows下mysql8.0.29winx64安装配置方法图文教程
mysql索引的数据结构是什么
mysql中存储过程和存储函数是什么?
mysql能存储多少条数据
mysql如何设置自增id
更多相关阅读请进入《mysql》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MySQL怎么设置外键约束?