您好,欢迎来到欧得旅游网。
搜索
您的当前位置:首页数据库大作业-论坛管理信息系统

数据库大作业-论坛管理信息系统

来源:欧得旅游网


《数据库课程设计》

设计选题:论坛管理信息系统

班 级:船海1101班 设 计 人:熊程珂

学 号: u201112220

辅导教师:董敏钦

1

一、 需求分析:

1.1 数据需求:

论坛管理信息系统需要完成功能主要有:

(1)作者信息模块:用来管理作者信息,包括作者昵称、贴子编号、性别、年龄、职业、爱好等;

(2)贴子信息模块:用来管理贴子信息,包括贴子编号、发贴日期、时间、等级等;

(3)回复日期模块:用来管理回复信息,包括作者昵称、回复时间、贴子编号等。

1.2 事物需求:

(1)在作者信息模块部分,要求: a.可以查看作者的个人信息;

b.可以对作者信息进行添加及删除的操作。 (2 )在贴子信息部分,要求: a.可以浏览贴子信息;

b.可以对贴子信息进行维护,包括添加及删除的操作。 (3)在回复日期部分,要求: a.可以查看回复日期;

b.可以对回复日期进行维护操作。

二、数据库设计:

2.1 实体模型:

作者 回复信息 1 n

发帖 回复 m 1

2

贴子 2.2 ER图到关系图的转换:

性别 年龄 职业 昵称 作者 爱好 回复信息 编号 编号 发贴 回复 等级 日期 时间 作者昵称 回复时间 贴子 编号

2.3 数据字典:

author表: ano aname agender aage aoccupation ahobby post表结构: ano pdate ptime pgrade Char(10) Char(10) Char(10) Char(10) 3

Char(10) Char(10) Char(10) smallint Char(10) Char(10) 不允许为空 不允许为空 允许为空 允许为空 允许为空 允许为空 不允许为空 允许为空 允许为空 允许为空 reply表: ano rname rtime Char(10) Char(10) Char(20) 不允许为空 允许为空 允许为空

三、关系图的建立:

四、功能实现:

4.1 创建数据库:

create database xck;

4.2创建数据表:

(1)author表:

create table author (ano char(10), aname char(10), agender char(10), aage smallint, aoccupation char(10), ahobby char(10) primary key(ano,aname) );

4

(2)post表: create table post

(ano char (10) primary key, pdate char(10), ptime char(10), pgrade char(10) );

(3)reply表: create table reply

(ano char(10) primary key, rname char(10), rtime char(20) , );

五、数据操作(插入、查询、删除、修改、添加)

5.1 插入:

(1)向author表插入信息:

insert into author values('01','熊程珂','女',19, '学生', '看书'); insert into author values('02','张武月','男',26, '医生', '做实验'); insert into author values('03','李晶','女',34, '老师', '游泳'); insert into author values('04','王亚彤', '女',32, 'HR', '打球'); insert into author values('05','熊程珂','女',19, '学生', '看书');

(2)向post表插入信息:

insert into post values('01','2007年', '4月8号', 'A'); insert into post values('02','2008年', '4月14号', 'A');

5

insert into post values('03','2011年', '5月18号', 'B'); insert into post values('04','2005年', '11月28号', 'A'); insert into post values('05','2012年', '10月2号', 'C');

(3)向reply表插入信息:

insert into reply values('01','赵硕', '2007年5月21号'); insert into reply values('02','张树新', '2008年7月16号'); insert into reply values('03','王明', '2011年8月1号'); insert into reply values('04','程珂', '2005年12月11号'); insert into reply values('05','郭云', '2012年12月1号');

5.2查询:

(1) 查询年龄在30岁以下的所有作者的名字和编号:

select aname,ano,aage from author where aage<30;

6

(2)查询贴子等级为A的所有贴子编号:

select ano,pgrade from post

where pgrade='A';

(3)查询回帖时间是在2010年以前的回帖者姓名:

select rname,rtime from reply

where rtime like '200%';

(4)查询名字姓“熊”且全名为三个汉字的作者的信息:

select aname,ano,agender,aage,aoccupation,ahobby from author

where aname like '熊__'

7

5.3向表中添加字段:

(1)将author表中年龄的数据类型由整型改为字符型: alter table author alter column aage char(10); (2)像post表中加入作者姓名: alter table post add s_name char(10);

5.4创建视图:

(1)创建视图:

create view view_1 as

select ano,aname,agender,aage,aoccupation,ahobby from author

(2)视图的查询:

select * from view_1;

8

(3)视图的更新:

insert into view_1 values('06','张洋', '男',17,'学生','踢球');

(4)视图的撤消

drop view view_1;

六、个人总结和体会:

经过了这次数据库上机操作,我对数据库以及课外的相关知识了解得更多了,并且动手操作能力也得到了提高。我从选题、需求分析到E-R图设计,再到关系模型设计,最后建立数据库,无一不是深思熟虑。首先是选题,随着网络的不断发展,网上论坛信息越来越多,发贴的人也越来越多。自然而然,回贴的人也越来越多。因此,我们需要一个论坛管理系统,来统计作者信息、贴子信息和回复信息,来使得论坛信息能够更好的运作。所以我设计这个论坛管理系统来有效地管理论坛信息,使得它能够更加规范和科学。其次是,需求分析,包括作者信息、贴子信息、回复日期,三个部分的规划。再就是E-R图和数据字典的制作,中途费了好大的心思,才把他们建立起来。然后就是,在软件中输入代码,得到系统表,实现数据库的功能。在输入代码,实现数据操作包括插入、查询、删除、修改、添加。最后生成关系图。

虽然在设计的过程中出现了诸多错误,但我都及时纠正了,走弯路不怕,就怕走错了路还不改。一分耕耘一分收获,上机操作的过程是很费精力和时间,也需要平时一点一点的积累,不断的努力,中途不会的地方,还找同学指导了我好久,才能完成这个课程设计,但成功之后的喜悦,只有自己实践了才能体会到。想到一句话:不经历风雨,怎么见彩虹;没有

9

人能随随便便成功。我希望我设计的系统,能够得到广泛的应用。最后感谢老师和助教的辛勤教导,让我对数据库的知识又多了一份了解~感谢所有给与我帮助的人~

10

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- ovod.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务