数据库设计--个人博客.doc_第1页
数据库设计--个人博客.doc_第2页
数据库设计--个人博客.doc_第3页
数据库设计--个人博客.doc_第4页
数据库设计--个人博客.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

个人博客数据库设计一、 项目概述及分析1. 项目背景随着互联网的发展,越来越多的人拥有了自己的个人博客。但是大多数采用的是网上别人做好的博客模板,众所周知,网上的模板并不是单独为个人而定制,而是面向大多数人的,独立设计一个博客,满足自己的需求。2. 分析系统主要完成以下几方面的功能:l 用户管理:用户的注册和登录,发表博文和评论。l 博文管理:用户可以在网站中发表和设置博文。l 评论管理:用户可以评论博文和回复其他用户的评论。l 分类管理:添加和删除分类,给文章设置分类。l 标签管理:添加和删除标签,给文章设置标签。二、 数据库概念模型设计基本ER图三、 数据库逻辑模型设计四、 数据库语句1. 建立数据表语句CREATE TABLE zj_users ( user_id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 用户ID, user_ip varchar(20) NOT NULL COMMENT 用户IP, user_name varchar(20) NOT NULL COMMENT 用户名, user_password varchar(15) NOT NULL COMMENT 用户密码, user_email varchar(30) NOT NULL COMMENT 用户邮箱, user_profile_photo varchar(255) NOT NULL COMMENT 用户头像, user_registration_time datetime DEFAULT NULL COMMENT 注册时间, user_birthday date DEFAULT NULL COMMENT 用户生日, user_age tinyint(4) DEFAULT NULL COMMENT 用户年龄, user_telephone_number int(11) NOT NULL COMMENT 用户手机号, user_nickname varchar(20) NOT NULL COMMENT 用户昵称, PRIMARY KEY (user_id), KEY user_name (user_name), KEY user_nickname (user_nickname), KEY user_email (user_email), KEY user_telephone_number (user_telephone_number) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;CREATE TABLE zj_articles ( article_id bigint(255) NOT NULL AUTO_INCREMENT COMMENT 博文ID, user_id bigint(20) NOT NULL COMMENT 发表用户ID, article_title text NOT NULL COMMENT 博文标题, article_content longtext NOT NULL COMMENT 博文内容, article_views bigint(20) NOT NULL COMMENT 浏览量, article_comment_count bigint(20) NOT NULL COMMENT 评论总数, article_date datetime DEFAULT NULL COMMENT 发表时间, article_like_count bigint(20) NOT NULL, PRIMARY KEY (article_id), KEY user_id (user_id), CONSTRAINT zj_articles_ibfk_1 FOREIGN KEY (user_id) REFERENCES zj_users (user_id) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;CREATE TABLE zj_comments ( comment_id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 评论ID, user_id bigint(20) NOT NULL COMMENT 发表用户ID, article_id bigint(20) NOT NULL COMMENT 评论博文ID, comment_like_count bigint(20) NOT NULL COMMENT 点赞数, comment_date datetime DEFAULT NULL COMMENT 评论日期, comment_content text NOT NULL COMMENT 评论内容, parent_comment_id bigint(20) NOT NULL COMMENT 父评论ID, PRIMARY KEY (comment_id), KEY article_id (article_id), KEY comment_date (comment_date), KEY parent_comment_id (parent_comment_id) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;CREATE TABLE zj_labels ( label_id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 标签ID, label_name varchar(20) NOT NULL COMMENT 标签名称, label_alias varchar(15) NOT NULL COMMENT 标签别名, label_description text NOT NULL COMMENT 标签描述, PRIMARY KEY (label_id), KEY label_name (label_name), KEY label_alias (label_alias) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;CREATE TABLE zj_set_artitle_label ( article_id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 文章ID, label_id bigint(20) NOT NULL, PRIMARY KEY (article_id), KEY label_id (label_id) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;CREATE TABLE zj_set_artitle_sort ( article_id bigint(20) NOT NULL COMMENT 文章ID, sort_id bigint(20) NOT NULL COMMENT 分类ID, PRIMARY KEY (article_id,sort_id), KEY sort_id (sort_id) ENGINE=InnoDB DEFAULT CHARSET=utf8;CREATE TABLE zj_sorts ( sort_id bigint(20) NOT NULL COMMENT 分类ID, sort_name varchar(50) NOT NULL COMMENT 分类名称, sort_alias varchar(15) NOT NULL COMMENT 分类别名, sort_description text NOT NULL COMMENT 分类描述, parent_sort_id bigint(20) NOT NULL COMMENT 父分类ID, PRIMARY KEY (sort_id), KEY sort_name (sort_name), KEY sort_alias (sort_alias) ENGINE=InnoDB DEFAULT CHARSET=utf8;CREATE TABLE zj_user_friends ( id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 标识ID, user_id bigint(20) NOT NULL COMMENT 用户ID, user_friends_id bigint(20) NOT NULL COMMENT 好友ID, user_note varchar(20) NOT NULL COMMENT 好友备注, user_status varchar(20) NOT NULL COMMENT 好友状态, PRIMARY KEY (id), KEY user_id (user_id) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;2. 简单查询语句l 某用户的所有好友:SELECTzj_user_friends.user_id AS user_id,zj_users.user_name AS user_name,zj_user_friends.user_friends_id AS user_friends_id,zj_user_friends.user_note AS user_noteFROM(zj_usersJOIN zj_user_friends)WHERE(zj_users.user_id = zj_user_friends.user_id) ;l 某标签下的所有博文SELECTzj_set_artitle_label.label_id AS label_id,zj_labels.label_name AS label_name,zj_set_artitle_label.article_id AS article_id,zj_articles.article_title AS article_titleFROM(zj_labelsJOIN zj_articles)JOIN zj_set_artitle_label)WHERE(zj_set_artitle_label.article_id = zj_articles.article_id)AND (zj_set_artitle_label.label_id = zj_labels.label_id) ;l 查询第一篇文章评论者的昵称和头像SELECTzj_users.user_nickname,zj_users.user_profile_photoFROMzj_usersWHERE zj_users.user_id IN(SELECT zj_comments.user_id FROM zj_commentsWHERE zj_comments.article_id=1);l 查询文章总评论条数SELECTarticle_id,COUNT( user_id ) FROMzj_comments GROUP BYzj_com

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论