zoukankan      html  css  js  c++  java
  • JavaWeb_gy博客网站_数据库实现

    3.1数据库需求分析

      技术博客网站的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据,数据结构以及数据处理的流程,组成一份详尽的数据库。针对本学院的毕业论文完成的流程,通过对技术博客网站设计和数据流程分析,设计如下所示的数据项和数据结构。

      1.用户数据实体:ID(id)、用户名(create_time)、创建时间(image)、头像(password)、密码(personal_sign)、个人签名(username)

      2.游客数据实体:游客ID(id)、头像(image)、账号(password)、密码(username)

      3.相册数据实体:ID(id)、内容(content)、相册封面(cover)、创建时间(create_time)、图像编号(image_number)、标题(title)

      4.博客数据实体:ID(id)、评论编号(comment_number)、内容(content)、博客封面(cover)、创建时间(create_time)、图像(image)、小内容(little_content)、小标题(little_title)、标题(title)、浏览数(view_number)、情绪ID(mood_id)

      5.图片数据实体:ID(id)、图像(image)、相册ID(album_id)

      6.消息数据实体:消息ID(id)、内容(content)、创建时间(create_time)、游客ID(visitor_id)

      7.心情数据实体:ID(id)、文本(content)、创建时间(create_time)、图形(image)、标题(title)、用户ID(user_id)

    以上的实体都是基本的数据实体,由于操作模块的名称对应该权限,在程序初始化时这些数据都应该添加,教师论文管理系统的目的进行论文管理,因此还要包括如下的几个数据实体:

      8.游客第三方登陆数据实体:用户ID(userId)、提供者ID(providerId)、提供程序用户ID(providerUserId)、等级(rank)、显示名称(displayName)、配置文件URL(profileUrl)、头像URL(imageUrl)、访问令牌(accessToken)、秘密(secret)、刷新令牌(refreshToken)、过期时间(expireTime)

      9.相册评论实体:相册评论实体(id)、相册文本(content)、创建时间(create_time)、相册(album_id)、游客ID(visitor_id)

      10.博客目录实体:博客ID(blog_id)、目录ID(catalog_id)

      11.博客评论实体: ID(id)、文本内容(content)、创建时间(create_time)、博客ID(blog_id)、游客ID(visitor_id)

      12.目录实体:ID(id)、目录(catalog)

    3.2数据库概念结构设计

      根据需求分析的数据项和数据结构,可以规划出用户实体、博客实体、评论实体等各实体的E_R图。具体如下图所示。

       

                        图3-1用户实体E-R图

      

                        图3-3相册实体E-R图

       

                        图3-4博客实体E-R

       

                        图3-5图片实体E-R图

       

                        图3-6消息实体E-R图

       

                        图3-7心情实体E-R图

       

                        图3-8游客第三方登陆数据实体E-R图

      

                        图3-9相册数据实体E-R图

      

                        图3-10博客目录数据实体E-R图

      

                        图3-11博客评论实体E-R图

      

                        图3-12目录实体E-R图

       

    3.3物理结构设计

      在这个数据库管理系统中要建立12张数据表,下面将主要介绍关键数据表的数据库设计的详细及存储后台用户基本信息的数据库表的字段说明。

    数据表的说明

      (1) 相册表Album:用于,如表3-1。

      (2) 相册评论表Album_comment:用于,如表3-2。

      (3) 博客表Blog:用于,如表3-3。

      (4) 博客目录表(Blog_catalog):用于,如表3-4。

      (5) 博客评论表(Blog_comment):用于,如表3-5。

      (6) 目录表(Catalog):用于,如表3-6。

      (7) 图片表(Image):用于,如表3-7。

      (8) 消息表(Message):用于,如表3-8。

      (9) 心情表(Mood):用于,如表3-9

      (10)用户表(User):用于,如表3-10。

      (11)游客第三方用户连接表(User connection):用于,如表3-11。

      (12)游客表(Visitor):用于,如表3-12

     

    数据表的详细设计

      (1) 相册表(album)的设计如表3-1所示:

    3-1相册表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    content

    VARCHAR(255)

    文本内容

     

    3

    cover

    VARCHAR(255)

    相册封面

     

    4

    create_time

    VARCHAR(255)

    创建时间

     

    5

    image_number

    BIGINT(20)

    图片编号

     

    6

    title

    VARCHAR(255)

    相册标题

     

     

    (2) 相册评论表(album_comment)的设计如表3-2所示:    

    3-2相册评论表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    content

    VARCHAR(255)

    文本内容

     

    3

    create_time

    VARCHAR(255)

    创建时间

     

    4

    album_id

    BIGINT(20)

    相册ID

     

    5

    visitor_id

    BIGINT(20)

    游客ID

     

     

     

    (3) 博客表(blog)的设计如表3-3所示:

    3-3博客表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    comment_number

    BIGINT(20)

    评论编号

     

    3

    content

    VARCHAR(255)

    本文内容

     

    4

    cover

    VARCHAR(255)

    博客封面

     

    5

    create_time

    VARCHAR(255)

    创建时间

     

    6

    image

    VARCHAR(255)

    图片

     

    7

    little_content

    VARCHAR(255)

    小内容

     

    8

    little_title

    VARCHAR(255)

    小标题

     

    9

    title

    VARCHAR(255)

    标题

     

    10

    view_number

    BIGINT(20)

    浏览数

     

    11

    mood_id

    BIGINT(20)

    心情ID

     

     

     

    (4) 博客目录表(blog_catalog)的设计如表3-4所示:

    3-4博客目录表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    blog_id

    BIGINT(20)

    博客ID

    主键

    2

    catalog_id

    BIGINT(20)

    目录ID

     

     

     

    (5) 博客评论表(blog_comment)的设计如表3-5所示:

    3-4博客评论表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    content

    VARCHAR(255)

    文本内容

     

    3

    create_time

    VARCHAR(255)

    创建时间

     

    4

    blog_id

    BIGINT(20)

    博客ID

     

    5

    visitor_id

    BIGINT(20)

    游客ID

     

     

     

    (6) 目录表(catalog)的设计如表3-6所示:

    3-4目录表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    blog_id

    BIGINT(20)

    博客ID

    主键

    2

    catalog_id

    BIGINT(20)

    评论ID

     

     

     

    (7) 图片表(image)的设计如表3-7所示:

    3-7图片表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    image

    VARCHAR(255)

    评论编号

     

    3

    album_id

    BIGINT(20)

    相册ID

     

     

    (8) 消息表(message)的设计如表3-8所示:

    3-8消息表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    content

    VARCHAR(255)

    评论编号

     

    3

    create_time

    VARCHAR(255)

    创建时间

     

    4

    visitor_id

    BIGINT(20)

    游客ID

     

     

     

    (9) 心情表(mood)的设计如表3-9所示:

    3-9心情表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    content

    VARCHAR(255)

    文本内容

     

    3

    create_time

    VARCHAR(255)

    创建时间

     

    4

    image

    VARCHAR(255)

    图片

     

    5

    title

    VARCHAR(255)

    标题

     

    6

    user_id

    BIGINT(20)

    用户ID

     

     

     

    (10)用户表(user)的设计如表3-10所示:

    3-10用户表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    BIGINT(20)

    ID

    主键

    2

    create_time

    VARCHAR(255)

    评论编号

     

    3

    image

    VARCHAR(255)

    图片

     

    4

    password

    VARCHAR(255)

    密码

     

    5

    personal_sign

    VARCHAR(255)

    个人签名

     

    6

    username

    VARCHAR(255)

    用户名

     

     

     

    (11)游客第三方登陆(userconnection)的设计如表3-11所示。

    3-11游客第三方登陆

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    userId

    BIGINT(20)

    ID

    主键

    2

    providerId

    VARCHAR(255)

    评论编号

     

    3

    providerUserId

    VARCHAR(255)

    提供程序用户ID

     

    4

    rank

    INT(11)

    等级

     

    5

    displayName

    VARCHAR(255)

    显示名称

     

    6

    profileUrl

    VARCHAR(255)

    简介

     

    7

    imageUrl

    VARCHAR(255)

    图片地址

     

    8

    accessToken

    VARCHAR(255)

    访问令牌

     

    9

    secret

    VARCHAR(255)

    秘密

     

    10

    refreshToken

    VARCHAR(255)

    刷新令牌

     

    11

    expireTime

    BIGINT(20)

    过期时间

     

     

     

    (12)游客(visitor)的设计如表3-12所示。

    3-12游客表

    编号

    字段名称

    字段类型

    字段说明

    备  注

    1

    id

    VARCHAR(255)

    ID

    主键

    2

    image

    VARCHAR(255)

    图片

     

    3

    password

    VARCHAR(255)

    密码

     

    4

    username

    BIGINT(20)

    用户名

     

    3.4创建表脚本文件

      根据数据库的字段设计,编写的创建数据表的语句详见附录。

    3.5表之间的关系

       

    附录A 代码

    创建表的脚本语句

    (1)album 相册数据表

    CREATE TABLE `album` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `content` varchar(255) DEFAULT NULL,
    
      `cover` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `image_number` bigint(20) DEFAULT NULL,
    
      `title` varchar(255) DEFAULT NULL,
    
      PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (2)album_comment 相册评论表

    CREATE TABLE `album_comment` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `content` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `album_id` bigint(20) DEFAULT NULL,
    
      `visitor_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FK1cy6btdqoy9096m0frrcpo3g2` (`album_id`),
    
      KEY `FKietvdkm0nluxxixvamf2p7s5o` (`visitor_id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (3)blog 博客表

    CREATE TABLE `blog` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `comment_number` bigint(20) DEFAULT NULL,
    
      `content` varchar(255) DEFAULT NULL,
    
      `cover` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `image` varchar(255) DEFAULT NULL,
    
      `little_content` varchar(255) DEFAULT NULL,
    
      `little_title` varchar(255) DEFAULT NULL,
    
      `title` varchar(255) DEFAULT NULL,
    
      `view_number` bigint(20) DEFAULT NULL,
    
      `mood_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FKnwck5t6ye777cw5njohwcjlh9` (`mood_id`)
    
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    View Code

    (4)blog_catalog 博客目录表

    CREATE TABLE `blog_catalog` (
    
      `blog_id` bigint(20) NOT NULL,
    
      `catalog_id` bigint(20) NOT NULL,
    
      PRIMARY KEY (`blog_id`,`catalog_id`),
    
      KEY `FKfo32rwtsnmv0bccmx8hl62rym` (`catalog_id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (5)blog_comment 博客评论表

    CREATE TABLE `blog_comment` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `content` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `blog_id` bigint(20) DEFAULT NULL,
    
      `visitor_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FKb9cpog8ie2cyapsyyt7gikpbl` (`blog_id`),
    
      KEY `FKo4sla94v9lbh09pbiwdpou7b1` (`visitor_id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (6)catalog 目录表

    CREATE TABLE `catalog` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `catalog` varchar(255) DEFAULT NULL,
    
      PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    View Code

    (7)image 图片表

    CREATE TABLE `image` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `image` varchar(255) DEFAULT NULL,
    
      `album_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FKklgd5pxhpuh3nwik115myord` (`album_id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (8)message 消息表

    CREATE TABLE `message` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `content` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `visitor_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FKe68qvwo3ve0unatu9eo4ub3f1` (`visitor_id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

    (9)mood 心情表

    CREATE TABLE `mood` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `content` varchar(255) DEFAULT NULL,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `image` varchar(255) DEFAULT NULL,
    
      `title` varchar(255) DEFAULT NULL,
    
      `user_id` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`id`),
    
      KEY `FK650gbgeldymqxf4wmj7ldqkyl` (`user_id`)
    
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    View Code

    (10)user 用户表

    CREATE TABLE `user` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `create_time` varchar(255) DEFAULT NULL,
    
      `image` varchar(255) DEFAULT NULL,
    
      `password` varchar(255) DEFAULT NULL,
    
      `personal_sign` varchar(255) DEFAULT NULL,
    
      `username` varchar(255) DEFAULT NULL,
    
      PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    View Code

    (11)user connection  游客第三方用户连接表

    CREATE TABLE `userconnection` (
    
      `userId` varchar(255) NOT NULL,
    
      `providerId` varchar(255) NOT NULL,
    
      `providerUserId` varchar(255) NOT NULL,
    
      `rank` int(11) NOT NULL,
    
      `displayName` varchar(255) DEFAULT NULL,
    
      `profileUrl` varchar(512) DEFAULT NULL,
    
      `imageUrl` varchar(512) DEFAULT NULL,
    
      `accessToken` varchar(512) NOT NULL,
    
      `secret` varchar(512) DEFAULT NULL,
    
      `refreshToken` varchar(512) DEFAULT NULL,
    
      `expireTime` bigint(20) DEFAULT NULL,
    
      PRIMARY KEY (`userId`,`providerId`,`providerUserId`),
    
      UNIQUE KEY `UserConnectionRank` (`userId`,`providerId`,`rank`)
    
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    View Code

    (12)visitor 游客表

    CREATE TABLE `visitor` (
    
      `id` bigint(20) NOT NULL AUTO_INCREMENT,
    
      `image` varchar(255) DEFAULT NULL,
    
      `password` varchar(255) DEFAULT NULL,
    
      `username` varchar(255) DEFAULT NULL,
    
      PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    View Code

     

     

     

     

     

  • 相关阅读:
    Silverlight 4中把DataGrid数据导出Excel
    C#正则的委托和lambda表达式用法
    C#简单的写日志方法
    GAE上传失败
    asp.net后台进程做定时任务
    ASP.NET页面生命周期描述
    巴士电台新版发布
    jQuery 1.51.7一些值得注意的更新
    wxPython应用心得
    Ajax保留浏览器历史的两种解决方案(Hash&Pjax)[转]
  • 原文地址:https://www.cnblogs.com/1138720556Gary/p/12111616.html
Copyright © 2011-2022 走看看