自己动手做博客之日志管理-1.2 数据库分析
2007-10-08 14:25
387 查看
通过上节的系统结构分析,明确的系统的功能需求,数据库需求设计也变得更加清晰。在系统中最主要的是日志信息的存储,例如日志的类别、日志名称、日志的内容等。其次,是日志的附加信息,即日志的评论内容,阅读次数等。
最终确定系统需要使用3个表完成。我们在SQL Server 2005中,建立这些数据表,数据库名称为myLog。这些表的名称、描述以及包含字段的说明如下:
l Infosort表
Inforsort表保存的是日志的类别信息,包括3个字段如表1-2所示。
[align=center]表1-2 infoSort表[/align]
l Info表
Info表存储了日志的主要信息,包括有日志的标题、摘要、正文内容、作者的昵称、发表时间及IP地址等,如表1-3所示。
[align=center]表1-3 info表[/align]
l Comment表
Comment保存的是除日志类别和日志主体信息之外的评论数据,评论中保存了日志的编号、评论内容、署名和日期等,如表1-4所示。
[align=center]表1-4 comment表[/align]
根据系统分析的结果,我们创建了以上三个与日志有关的表。细心的读者会发现还缺少一个很重要的表,即存储日志管理员信息的表。下面就来介绍它,由于通常这个表的记录和字段都比较少,因此这里将管理员的信息存储到数据库以外——XML文件中。
但是我们知道,XML文件可以使用任何文本编辑器打开,这样不是就暴露密码了吗?答案是否定的,因为这里我们为密码进行了加密操作,只有知道密钥才可以看到密码。如下所示即为本例中所采用的管理员XML文件:
<?xml version="1.0" encoding="utf-8"?>
<adminlist>
<list>
<adminid>1</adminid>
<adminname>21232F297A57A5A743894A0E4A801FC3</adminname>
<adminpwd>21232F297A57A5A743894A0E4A801FC3</adminpwd>
</list>
</adminlist>
XML的文件名为admin.xml,保存在站点根目录的images子目录中。如上面所示,其中adminname节点为管理员用户名,adminpwd节点为管理员密码,从直观上已经很难分辩出原始数据。
最终确定系统需要使用3个表完成。我们在SQL Server 2005中,建立这些数据表,数据库名称为myLog。这些表的名称、描述以及包含字段的说明如下:
l Infosort表
Inforsort表保存的是日志的类别信息,包括3个字段如表1-2所示。
[align=center]表1-2 infoSort表[/align]
字段 | 数据类型 | 长度 | 允许空 | 备注 |
id | int | 4 | 否 | 日志类别标识,自增长 |
sortName | varchar | 30 | 是 | 日志类别名称 |
sortDate | smalldatetime | 默认 | 是 | 类别创建时间 |
Info表存储了日志的主要信息,包括有日志的标题、摘要、正文内容、作者的昵称、发表时间及IP地址等,如表1-3所示。
[align=center]表1-3 info表[/align]
字段 | 数据类型 | 长度 | 允许空 | 备注 |
id | int | 4 | 否 | 日志标识,自增长 |
title | varchar | 200 | 是 | 日志标题名称 |
author | varchar | 50 | 是 | 作者昵称 |
abstract | nvarchar | max | 是 | 摘要 |
content | nvarchar | max | 是 | 正文内容 |
sortID | int | 默认 | 是 | 类别编号 |
replyCount | int | 默认 | 是 | 评论数量 |
link | varchar | 100 | 是 | 链接 |
date | datetime | 默认 | 是 | 发表日期 |
IP | char | 20 | 是 | IP地址 |
hits | int | 默认 | 是 | 阅读次数 |
homeTop | smallint | 默认 | 是 | 置顶显示 |
url | Varchar | 200 | 是 | 引用地址 |
Comment保存的是除日志类别和日志主体信息之外的评论数据,评论中保存了日志的编号、评论内容、署名和日期等,如表1-4所示。
[align=center]表1-4 comment表[/align]
字段 | 数据类型 | 长度 | 允许空 | 备注 |
id | int | 4 | 否 | 评论标识,自增长 |
author | char | 50 | 是 | 评论署名 |
content | nvarchar | max | 是 | 评论内容 |
sortID | int | 默认 | 是 | 日志编号 |
date | datetime | 默认 | 是 | 发表日期 |
IP | char | 20 | 是 | IP地址 |
url | Varchar | 200 | 是 | 引用地址 |
但是我们知道,XML文件可以使用任何文本编辑器打开,这样不是就暴露密码了吗?答案是否定的,因为这里我们为密码进行了加密操作,只有知道密钥才可以看到密码。如下所示即为本例中所采用的管理员XML文件:
<?xml version="1.0" encoding="utf-8"?>
<adminlist>
<list>
<adminid>1</adminid>
<adminname>21232F297A57A5A743894A0E4A801FC3</adminname>
<adminpwd>21232F297A57A5A743894A0E4A801FC3</adminpwd>
</list>
</adminlist>
XML的文件名为admin.xml,保存在站点根目录的images子目录中。如上面所示,其中adminname节点为管理员用户名,adminpwd节点为管理员密码,从直观上已经很难分辩出原始数据。
相关文章推荐
- 自己动手做博客之日志管理-1.1 系统分析
- 自己动手做博客之日志管理-2.2 模板页
- 自己动手做博客之日志管理-5.2 管理日志分类
- 自己动手做博客之日志管理-5.3 管理日志列表
- 自己动手做博客之日志管理-3.1 添加系统首页布局
- 自己动手做博客之日志管理-5.4 管理评论
- 自己动手做博客之日志管理-3.2 编码实现系统首页
- 自己动手做博客之日志管理-4.1 查看日志列表
- 自己动手做博客之日志管理-5.5 修改密码
- 自己动手做博客之日志管理-2.1 数据库类
- 自己动手做博客之日志管理-3.3 编码实现其他模块
- 自己动手做博客之日志管理-4.2 查看日志正文
- 自己动手做博客之日志管理-5.1 管理员登录
- [置顶] ELK日志分析系统通过shield实现权限管理
- 商业分析的思想指导自己,商业智能的手段管理自己
- 用sql语句来管理数据库日志问题
- 数据库管理进阶,MySQL索引分析和优化
- [置顶] 自己动手写CSDN博客提取器源码分析之一:处理网页保存为txt文件
- 一步步开发自己的博客 番外篇(7、异步记录日志 和 文章阅读量统计)
- 日志管理与分析的十个最佳实践