mysql表怎么设置外键,mysql建表设置外键

mysql表创建好后添加外键

首先要创建一个字段:alter table 表名 add 字段名 字段类型;

创新互联于2013年开始,先为舞钢等服务建站,舞钢等地企业,进行企业商务咨询服务。为舞钢企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

再添加外键约束:alter table 需加外键的表 add constraint 外键名 foreign key(需加外键表的字段名) references 关联表名(关联字段名);

注意:外键名不能重复

三张表Student(Sno主键),SC(Sno外键,Cno外键),Course(Cno主键),怎么用mysql去设置呢?

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

2、之后在该界面中,右键点击Student表里“设计”选项。

3、接着在该界面中,右键点击“Sno”属性里“设置主键”选项。

4、然后在该界面中,表Student设置Sno主键成功。

5、之后在该界面中,右键点击Course表里“设计”选项。

6、接着在该界面中,右键点击“Cno”属性里“设置主键”选项。

7、然后在该界面中,表Course设置Cno主键成功。

8、接着在该界面中,右键点击SC表里“设计”选项。

9、然后在该界面中,右键点击“Sno”属性里“关系”选项。

10、接着在该界面中,选择主键表为Student表里的“Sno”属性。

11、然后在该界面中,右键点击“Cno”属性里“关系”选项。

12、接着在该界面中,选择主键表为Course表里的“Cno”属性。

13、最后在该界面中,表SC设置Sno外键,Cno外键成功。

mysql怎么设定外键

为已经添加好的数据表添加外键:

语法:alter table 表名 add constraint FK_ID foreign key(你的外键字段名) REFERENCES 外表表名(对应的表的主键字段名);

例: alter table tb_active add constraint FK_ID foreign key(user_id) REFERENCES tb_user(id)

//FK_ID是外键的名称

/*

CREATE TABLE `tb_active` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`title` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,

`content` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,

`user_id` int(11) NOT NULL,

PRIMARY KEY (`id`),

KEY `user_id` (`user_id`),

KEY `user_id_2` (`user_id`),

CONSTRAINT `FK_ID` FOREIGN KEY (`user_id`) REFERENCES `tb_user` (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1

*/

删除外键

语法: ALTER TABLE table-name DROP FOREIGN KEY key-id;

例: ALTER TABLE `tb_active` DROP FOREIGN KEY 'FK_ID'

自动键更新和删除:

外键可以保证新插入的记录的完整性,但是,如果在REFERENCES从句中已命名的表删除记录会怎么样?在使用同样的值作为外键的辅助表中会发生什么?

很明显,那些记录也应该被删除,否则在数据库中就会有很多无意义的孤立记录,MYSQL可以通过向FOREIGN KEY...REFERENCES修饰符添加一个ON DELETE 或ON UPDATE子句简化任务,它告诉了数据库在这种情况如何处理孤立任务。


本文标题:mysql表怎么设置外键,mysql建表设置外键
文章位置:http://scyanting.com/article/heehjc.html