佛山网站优化好,汕头市城市建设总公司网站,北京网站建设设计公司哪家好,学校网站建设可行性分析任务描述
本关任务#xff1a;在博客数据库中建立博客标签表。
相关知识
多对多关系的建立
每一个博客都可以设置很多个标签#xff0c;比如一篇讲JavaWeb知识的博客#xff0c;就可能会涉及到多个标签如#xff1a;前端、后端、Java、SpringMVC等标签#xff0c;而一…任务描述
本关任务在博客数据库中建立博客标签表。
相关知识
多对多关系的建立
每一个博客都可以设置很多个标签比如一篇讲JavaWeb知识的博客就可能会涉及到多个标签如前端、后端、Java、SpringMVC等标签而一个标签也可能对应多个博客比如“后端”这个标签就可能对应很多博客如Python博客、Java博客、.net博客等。 所以我们应该讲博客标签表与博客表设计成一个多对多的关系那么应该怎么设计呢这是我们要思考的问题。
我们对博客标签表与博客信息表设计如下图所示 设计了一个中间表分别与博客信息表和博客标签表是一对多的关系这样博客标签表t_tag就和博客信息表t_blog是多对多的关系了。
编程要求
请仔细阅读右侧代码根据方法内的提示在Begin - End区域内进行代码补充具体任务如下
根据设计图创建博客标签表t_tag以及中间表t_tag_blog并建立表与表之间的联系。外键名分别为FK_blog_id、FK_tag_id。第一个外键对应的是博客信息表的的ID第二个外键对应的是标签表的ID。
测试说明
补充完代码后点击测评平台会对你编写的代码进行测试当你的结果与预期输出一致时即为通过。 开始你的任务吧祝你成功
原题代码
use blog_db;
CREATE TABLE t_user (userId bigint NOT NULL AUTO_INCREMENT COMMENT 用户ID,username varchar(32) NOT NULL COMMENT 用户名,password varchar(32) NOT NULL COMMENT 用户密码,user_sex varchar(6) NOT NULL DEFAULT 0 COMMENT 用户性别,email varchar(64) DEFAULT NULL COMMENT 用户邮箱,phone varchar(11) NOT NULL COMMENT 手机号码,firstname varchar(6) DEFAULT NULL COMMENT 姓,lastname varchar(12) DEFAULT NULL COMMENT 名,avatar varchar(255) DEFAULT NULL COMMENT 头像地址,is_superuser int NOT NULL DEFAULT 0 COMMENT 是否是管理员 1代表 是 0代表不是,last_login datetime DEFAULT NULL COMMENT 上一次登录时间,user_register_time datetime DEFAULT NULL COMMENT 用户注册时间,PRIMARY KEY (userId)
);CREATE TABLE blog_type (type_id int(11) NOT NULL AUTO_INCREMENT COMMENT 类型ID,type_name varchar(32) NOT NULL COMMENT 类型名称,PRIMARY KEY (type_id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8;CREATE TABLE t_blog (blog_id bigint NOT NULL AUTO_INCREMENT COMMENT 博客ID,blog_title varchar(100) NOT NULL COMMENT 博客标题,blog_content longtext NOT NULL COMMENT 博客内容,userid bigint DEFAULT NULL COMMENT 创建人ID,type_id int(11) DEFAULT NULL COMMENT 类型ID,blog_status int(11) NOT NULL DEFAULT 0 COMMENT 博客状态 1为发布 0为草稿,create_time datetime NOT NULL COMMENT 创建时间,update_time datetime NOT NULL COMMENT 更新时间,cover_image varchar(255) DEFAULT NULL COMMENT 封面图片,PRIMARY KEY (blog_id),KEY FK_type_id (type_id),KEY FK_user_id (userid),CONSTRAINT FK_type_id FOREIGN KEY (type_id) REFERENCES blog_type (type_id),CONSTRAINT FK_user_id FOREIGN KEY (userid) REFERENCES t_user (userId)
) ENGINEInnoDB AUTO_INCREMENT27 DEFAULT CHARSETutf8;CREATE TABLE t_comment (comment_id bigint NOT NULL AUTO_INCREMENT COMMENT 评论id,comment_content varchar(500) NOT NULL COMMENT 评论内容,blog_id bigint NOT NULL COMMENT 博客ID,createtime datetime NOT NULL COMMENT 评论时间,userid bigint NOT NULL COMMENT 评论人ID,replyid int(11) NOT NULL,PRIMARY KEY (comment_id),KEY FK_comment_blog_id (blog_id),KEY FK_comment_user_id (userid),CONSTRAINT FK_comment_blog_id FOREIGN KEY (blog_id) REFERENCES t_blog (blog_id),CONSTRAINT FK_comment_user_id FOREIGN KEY (userid) REFERENCES t_user (userId)
) ENGINEInnoDB DEFAULT CHARSETutf8;#请在此添加实现代码
########## Begin ##########
#创建博客标签表t_tag并建立表之间的关系########## End ##########
实验代码
#请在此添加实现代码
########## Begin ##########
#创建博客标签表t_tag并建立表之间的关系
create table t_tag(tag_id int AUTO_INCREMENT PRIMARY KEY,tag_name varchar(32) NOT NULL
);
create table t_tag_blog(tag_id int,blog_id bigint,constraint FK_blog_id FOREIGN KEY (tag_id) references t_tag(tag_id),constraint FK_tag_id FOREIGN KEY (blog_id) references t_blog(blog_id)
);
########## End ##########