数据库设计说明书
1. 引言
在使用任何数据库之前,都必须设计好数据库,包括将要存储的数据的类型,数据之间的相互关系以及数据的组织形式。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。为了合理地组织和高效率地存取数据,目前最好的方式,就是建立数据库系统,因此在系统的总体设计阶段,数据库的建立与设计是一项十分重要的内容。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
1.1 编写目的
数据库设计的好坏是一个关键。如果把企业的数据比做生命所必需的血液,那么数据库的设计就是应用中最重要的一部分,是一个系统的根基。用于开发人员进行项目设计,以此作为编码的依据,同时也为后续的数据库维护工作提供了良好的使用说明,也可以作为未来版本升级时
的重要参考资料。数据库设计的目标是建立一个合适的数据模型。这个数据模型应当是满足用户要求,既能合理地组织用户需要的所有数据,又能支持用户对数据的的所有处理功能。并且要具有较高的范式,数据完整性好,效益高,便于理解和维护,没有数据冲突。
2. 外部设计
外部设计是研究和考虑所要建立的数据库的信息环境,对数据库应用领域中各种信息要求和操作要求进行详细地分析,了解应用领域中数据项、数据项之间的关系和所有的数据操作的详细要求,了解哪些因素对响应时间、可用性和可靠性有较大的影响等各方面的因素。
2.1 标识符和状态
数据库表前缀: afunms
用户名:root
密码:root
权限:全部
有效时间:开发阶段
说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库 连接字符串,在发行前请予以改正。
2.2 使用它的程序
本系统主要利用jsp作为前端的应用开发工具,使用MySQL作为后台的数据库, Linux或Windows均可作为系统平台。
2.3 约定
■ 所有命名一定要具有描述性,杜绝一切拼音、或拼音英文混杂的命名方式。
■ 字符集采用 UTF-8,请注意字符的转换。
■ 所有数据表第一个字段都是系统内部使用主键列,自增字段,不可空,名称为:
id,确保不把此字段暴露给最终用户。
■ 除特别说明外,所有日期格式都采用int格式,无时间值。
■ 除特别说明外,所有字段默认都设置不充许为空, 需要设置默认值。
■ 所有普通索引的命名都是表名加设置索引的字段名组合,例如用户表 User 中
name字段设置普通索引,则索引名称命名方式为 user_name。
3. 结构设计
数据库的结构设计中有许许多多需要考虑的因素,如数据库的背景、应用环境等方面都需要有深入的了解,只有一个对所有这些因素都很了解的数据库设计专家,他设计的数据库才能易于使用和维护,并且具有高效和一致的特征。虽然这样只对数据库设计过程有一个概要的了解,但是仍然有助于读者了解和掌握 SQL,使读者可以很好地分析数据间的相互关系在使用SQL进行报表的生成、子查询及视图等操作时,可以更好地进行操作。
5.物理结构设计
数据库设计的最后阶段是确定数据库在物理设备上的存储结构和存取方法,也就是设计数据
库的物理数据模型,主要是设计表结构。一般地,实体对应于表,实体的属性对应于表的列,实体之间的关系成为表的约束。逻辑设计中的实体大部分可以转换成物理设计中的表,但是它们并不一定是一一对应的。本次项目开发采用的是MySQL建立数据库。
5.1 设计数据表结构
在利用MySQL创建一个新的数据表以前,应当根据逻辑模型和数据字典先分析和设计数据表,描述出数据库中基本表的设计。需要确定数据表名称,所包含字段名称,数据类型,宽度以及建立的主键、外键等描述表的属性的内容。本项目全部 26 个数据表结构设计如下所示:
表5.1-1 综合流速结构表
表名 | ALLUTILHDX+ip用于保存网络设备流速信息 | |||
列名 | 数据类型 | 属性 | 约束条件 | |
ID | bigint(20) | 无符号/非空/自动增涨 | 主键 | |
IPADDRESS | VARCHAR(5) | 无符号/非空/缺省0 | ||
RESTYPE | VARCHAR(50) | 非空/缺省' ' | ||
CATEGORY | VARCHAR(10) | 非空/缺省' ' | ||
ENTITY | VARCHAR(100) | 非空/缺省' ' | ||
SUBENTITY | varchar(60) | 非空/缺省' ' | ||
THEVALUE | bigint(255) | 非空/缺省' ' | ||
COLLECTTIME | timestamp | 非空/缺省' ' | ||
UNIT | varchar(30) | 非空/缺省' ' | ||
COUNT | bigint(20) | 非空/缺省' ' | ||
BAK | varchar(100) | 非空/缺省' ' | ||
CHNAME | varchar(100) | 非空/缺省' ' | ||
补充说明 | ||||
表5.1-2 cpu结构表
表名 | Cpu+ip用于保存设备cpu利用率信息 | |||
列名 | 数据类型 | 属性 | 约束条件 | |
ID | bigint(20) | 无符号/非空/自动增涨 | 主键 | |
IPADDRESS | VARCHAR(5) | 无符号/非空/缺省0 | ||
RESTYPE | VARCHAR(50) | 非空/缺省' ' | ||
CATEGORY | VARCHAR(10) | 非空/缺省' ' | ||
ENTITY | VARCHAR(100) | 非空/缺省' ' | ||
SUBENTITY | varchar(60) | 非空/缺省' ' | ||
THEVALUE | bigint(255) | 非空/缺省' ' | ||
COLLECTTIME | timestamp | 非空/缺省' ' | ||
UNIT | varchar(30) | 非空/缺省' ' | ||
COUNT | bigint(20) | 非空/缺省' ' | ||
BAK | varchar(100) | 非空/缺省' ' | ||
CHNAME | varchar(100) | 非空/缺省' ' | ||
补充说明 | ||||
表5.1-3 磁盘利用率表
表名 | Disk+ip用于保存设备磁盘利用率信息 | |||
列名 | 数据类型 | 属性 | 约束条件 | |
ID | bigint(20) | 无符号/非空/自动增涨 | 主键 | |
IPADDRESS | VARCHAR(5) | 无符号/非空/缺省0 | ||
RESTYPE | VARCHAR(50) | 非空/缺省' ' | ||
CATEGORY | VARCHAR(10) | 非空/缺省' ' | ||
ENTITY | VARCHAR(100) | 非空/缺省' ' | ||
SUBENTITY | varchar(60) | 非空/缺省' ' | ||
THEVALUE | bigint(255) | 非空/缺省' ' | ||
COLLECTTIME | timestamp | 非空/缺省' ' | ||
UNIT | varchar(30) | 非空/缺省' ' | ||
COUNT | bigint(20) | 非空/缺省' ' | ||
BAK | varchar(100) | 非空/缺省' ' | ||
CHNAME | varchar(100) | 非空/缺省' ' | ||
补充说明 | ||||
表5.1-4 内存利用率表
表名 | Memory+ip 用于保存设备内存利用率信息 | |||
列名 | 数据类型 | 属性 | 约束条件 | |
ID | bigint(20) | 无符号/非空/自动增涨 | 主键 | |
IPADDRESS | VARCHAR(5) | 无符号/非空/缺省0 | ||
RESTYPE | VARCHAR(50) | 非空/缺省' ' | ||
CATEGORY | VARCHAR(10) | 非空/缺省' ' | ||
ENTITY | VARCHAR(100) | 非空/缺省' ' | ||
SUBENTITY | varchar(60) | 非空/缺省' ' | ||
THEVALUE | bigint(255) | 非空/缺省' ' | ||
COLLECTTIME | timestamp | 非空/缺省' ' | ||
UNIT | varchar(30) | 非空/缺省' ' | ||
COUNT | bigint(20) | 非空/缺省' ' | ||
BAK | varchar(100) | 非空/缺省' ' | ||
CHNAME | varchar(100) | 非空/缺省' ' | ||
补充说明 | ||||
表5.1-5 端口流速表
表名 | Memory+ip 端口利用率信息 | |||
列名 | 数据类型 | 属性 | 约束条件 | |
ID | bigint(20) | 无符号/非空/自动增涨 | 主键 | |
IPADDRESS | VARCHAR(5) | 无符号/非空/缺省0 | ||
RESTYPE | VARCHAR(50) | 非空/缺省' ' | ||
CATEGORY | VARCHAR(10) | 非空/缺省' ' | ||
ENTITY | VARCHAR(100) | 非空/缺省' ' | ||
SUBENTITY | varchar(60) | 非空/缺省' ' | ||
THEVALUE | bigint(255) | 非空/缺省' ' | ||
COLLECTTIME | timestamp | 非空/缺省' ' | ||
UNIT | varchar(30) | 非空/缺省' ' | ||
COUNT | bigint(20) | 非空/缺省' ' | ||
BAK | varchar(100) | 非空/缺省' ' | ||
CHNAME | varchar(100) | 非空/缺省' ' | ||
补充说明 | ||||
表5.1-6 云数据表
表名 | Oss_cloud 云数据信息表 | ||||
列名 | 数据类型 | 属性 | 约束条件 | ||
id | varchar(100) | 无符号/非空/自动增涨 | 主键 | ||
CLOUDNAME | VARCHAR(30) | 无符号/非空/缺省0 | |||
CLOUDDESC | VARCHAR(30) | 非空/缺省' ' | |||
USAGESTATUS | VARCHAR(30) | 非空/缺省' ' | |||
VID | VARCHAR(20) | 非空/缺省' ' | |||
DCID | VARCHAR(30) | 非空/缺省' ' | |||
ccpus | VARCHAR(30) | 非空/缺省' ' | |||
memorys | VARCHAR(30) | 非空/缺省' ' | |||
caliches | VARCHAR(30) | 非空/缺省' ' | |||
INVM | VARCHAR(30) | 非空/缺省' ' | |||
补充说明 | |||||
表5.1-7云数据中心表
表名 | Lmbang_collect | ||||
列名 | 数据类型 | 属性 | 约束条件 | ||
id | varchar(100) | 无符号/非空/自动增涨 | 主键 | ||
DATACENTRENAME | varchar(100) | 非空/缺省' ' | |||
DATACENTREDESC | varchar(100) | 非空/缺省' ' | |||
dcid | varchar(100) | 非空/缺省' ' | |||
INVM | varchar(100) | 非空/缺省' ' | |||
补充说明 | |||||
表5.1-8 评论表
表名 | Lmbang_comment,用于保存评论记录,表引擎为 MyISAM 类型, 字符集为 utf-8 | ||||
列名 | 数据类型 | 属性 | 约束条件 | 说明 | |
id | mysql数据库损坏修复INIT(11) | 无符号/非空/自动增涨 | 主键 | 评论编号 | |
ctype | TINYINIT(4) | 非空/缺省' ' | 评论名称 | ||
cid | INIT(11) | 非空/缺省' ' | 评论所属id | ||
content | TEXT | 非空/缺省' ' | 评论内容 | ||
posttime | BIGINIT(20) | 非空/缺省' | 发表时间 | ||
uid | INIT(11) | 非空/缺省' | 用户id | ||
qid | INIT(11) | 非空/缺省' | 引用回复id | ||
floor | INIT(11) | 无符号/非空/缺省0 | 所属楼层 | ||
补充说明 | Ctype类型:1 话题评论,2图片日记 3文字图片 4语音图片。 Qid是话题评论时,引用回复的id Floor话题评论所属楼层 | ||||
表5.1-9 日记表
表名 | Lmbang_diary,用于保存日记记录,表引擎为 MyISAM 类型, 字符集为 utf-8 | ||||
列名 | 数据类型 | 属性 | 约束条件 | 说明 | |
id | INT(11) | 无符号/非空/自动增涨 | 主键 | 日记编号 | |
uid | INIT(11) | 非空/缺省' ' | 用户id | ||
type | VARCHAR(20) | 非空/缺省' ' | 日记类型 | ||
content | TEXT | 非空/缺省' ' | 日记内容 | ||
posttime | BIGINIT(20) | 非空/缺省' | 发表时间 | ||
补充说明 | Type类型: audio 音频日记 pic 图片日记 text 文档日记 | ||||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论