
article_cate是父表
article是子表
在子表中设置附表的主键作为外键就可以了。
比如:
article_cate(cate_id,cate_name)
article(id,title,author,content,cate_id)
这个cate_id参照article_cate的cate_id
两种方法,命令与图形化
图形化,在控制台左边的小窗格中,找到要设置的表格名,右键,新建外键,然后根据要求设置既可。(新建关系图-->添加表 然后直接用鼠标拖字段连接就可以建立外键约束了 )
命令方式
sql ce表中建立外键约束的语法:CREATE TABLE DetectTable(UserID integer,StartTime datetime not null,EndTime datetime not null,MassName nvarchar(10), foreign key (UserID) references UserTable(UserID)),其中,UserID为UserTable表中的主键。
为已经添加好的数据表添加外键:
语法: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 KEYREFERENCES修饰符添加一个ON DELETE 或ON UPDATE子句简化任务,它告诉了数据库在这种情况如何处理孤立任务。
drop table cotton; create table cotton( id int primary key, user varchar(11), email varchar(11), url varchar(11), content varchar(11), addTime date, biao_id int, constraint FK_biao_id foreign key (blog_id) references biao(id) )ENGINE=InnoDB DEFAULT CHARSET=gb2312; (注释:一定要记住varchar(11),否则可能就会出现错误,从已有表导出sql才看以出)。 此sql语句用sql-front导出后的结果是: DROP TABLE IF EXISTS `comment`; CREATE TABLE `comment` ( `id` int(11) NOT NULL, `user` varchar(11) default NULL, `email` varchar(11) default NULL, `url` varchar(11) default NULL, `content` varchar(11) default NULL, `addTime` date default NULL, `blog_id` int(11) default NULL, PRIMARY KEY (`id`), KEY `FK_blog_id` (`blog_id`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312; ALTER TABLE `comment` ADD FOREIGN KEY (`blog_id`) REFERENCES `blog` (`id`); 推荐人评论 实例讲解Mysql数据库中应当如何建立外键,值得参阅。
我们使用sql server创建数据表的时候,经常需要建立表之间的外键约束关系,那么如何添加外键呢?下面我给大家分享一下。
工具/材料sql server
01首先我们先来建立两个表,如下图所示,班级表和年级表
02然后右键单击班级表,在d出的菜单中选择关系选项,如下图所示
03接下来在d出的表和关系界面中设置外键对应字段,如下图所示
04最后我们就可以在左侧看见外键约束关系了,如下图所示
1、首先双击SQLyogEnt的快捷方式以打开软件;
2、进入到软件首页,首先创建一个新的数据库,命令为newMysql;
3、创建两个表,命令为class、student;
class表结构为id、class_code、class_name;
student表结构为id、class_code、student_code、student_name;
4、创建成功后,在newMysql数据库列表中就存在了两个表;
5、然后我们来创建外键;通过sql创建:alter table class add foreign key class_foreignKey(id) references student(id);
6、然后也可以对外键进行删除处理;通过sql删除:ALTER TABLE class DROP FOREIGN KEY class_foreignKey;
以上就是关于数据库中一篇个文章有多个文章分类时该如何设置外键全部的内容,包括:数据库中一篇个文章有多个文章分类时该如何设置外键、怎么在SQL中设置外键、mysql怎么设定外键等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)