数据库课程设计
设计选题:论坛管理信息系统班 级:信息与计算科学班设 计 人:邹业安学 号:辅导教师:褚万军
58
一、需求分析: ........................................... 0 数据需求: ........................................... 0 二、数据库设计: ......................................... 1 实体模型: ........................................... 1 ER图到关系图的转换: ................................. 1 数据字典: ............................................ 2 三、关系图的建立: ........................................ 3 四、功能实现: ............................................ 3 创建数据库: ......................................... 3 创建数据表: .......................................... 3 五、数据操作 ............................................. 4 插入: ............................................... 4 查询: ................................................ 6 向表中添加字段: ...................................... 8 创建视图: ............................................ 8 (1)创建视图: .................................... 8 (2)视图的查询: .................................. 9 (3)视图的更新: .................................. 9 (4)视图的撤消 ................................... 10 六、个人总结和体会: ..................................... 10
一、需求分析:
数据需求:
论坛管理信息系统需要完成功能主要有:
(1)作者信息模块:用来管理作者信息,包括作者昵称、贴子编号、性别、年龄、职业、爱好等;
(2)贴子信息模块:用来管理贴子信息,包括贴子编号、发贴日期、时间、等级等;
(3)回复日期模块:用来管理回复信息,包括作者昵称、回复时间、贴子编号等。
事物需求:
(1)在作者信息模块部分,要求: a.可以查看作者的个人信息;
b.可以对作者信息进行添加及删除的操作。 (2 )在贴子信息部分,要求: a.可以浏览贴子信息;
b.可以对贴子信息进行维护,包括添加及删除的操作。 (3)在回复日期部分,要求: a.可以查看回复日期;
b.可以对回复日期进行维护操作。
二、数据库设计:
实体模型:
作者 回复信息 1 n
发帖 回复 m 1
贴子 ER图到关系图的转换:
性别 年龄 职业 昵称 作者 爱好 回复信息 编号 编号 发贴 回复 等级 日期 时间 作者昵称 回复时间 贴子 编号
数据字典:
author表: ano aname agender aage aoccupation ahobby post表结构: ano pdate ptime pgrade reply表: ano rname rtime
Char(10) Char(10) Char(20) 不允许为空 允许为空 允许为空 Char(10) Char(10) Char(10) Char(10) 不允许为空 允许为空 允许为空 允许为空 Char(10) Char(10) Char(10) smallint Char(10) Char(10) 不允许为空 不允许为空 允许为空 允许为空 允许为空 允许为空 三、关系图的建立:
四、功能实现:
创建数据库:
create database xck;
创建数据表:
(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) );
(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) , );
五、数据操作
插入:
(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'); 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号');
查询:
(1) 查询年龄在30岁以下的所有作者的名字和编号:
select aname,ano,aage from author where aage<30;
(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 '熊__'
向表中添加字段:
(1)将author表中年龄的数据类型由整型改为字符型: alter table author alter column aage char(10); (2)像post表中加入作者姓名: alter table post add s_name char(10);
创建视图: (1)创建视图:
create view view_1 as
select ano,aname,agender,aage,aoccupation,ahobby
from author
(2)视图的查询:
select * from view_1;
(3)视图的更新:
insert into view_1 values('06','张洋', '男',17,'学生','踢球');
(4)视图的撤消
drop view view_1;
六、个人总结和体会:
经过了这次数据库上机操作,我对数据库以及课外的相关知识了解得更多了,并且动手操作能力也得到了提高。我从选题、需求分析到E-R图设计,再到关系模型设计,最后建立数据库,无一不是深思熟虑。首先是选题,随着网络的不断发展,网上论坛信息越来越多,发贴的人也越来越多。自然而然,回贴的人也越来越多。因此,我们需要一个论坛管理系统,来统计作者信息、贴子信息和回复信息,来使得论坛信息能够更好的运作。所以我设计这个论坛管理系统来有效地管理论坛信息,使得它能够更加规范和科学。其次是,需求分析,包括作者信息、贴子信息、回复日期,三个部分的规划。再就是E-R图和数据字典的制作,中途费了好大的心思,才把他们建立起来。然后就是,在软件中输
入代码,得到系统表,实现数据库的功能。在输入代码,实现数据操作包括插入、查询、删除、修改、添加。最后生成关系图。
虽然在设计的过程中出现了诸多错误,但我都及时纠正了,走弯路不怕,就怕走错了路还不改。一分耕耘一分收获,上机操作的过程是很费精力和时间,也需要平时一点一点的积累,不断的努力,中途不会的地方,还找同学指导了我好久,才能完成这个课程设计,但成功之后的喜悦,只有自己实践了才能体会到。想到一句话:不经历风雨,怎么见彩虹;没有人能随随便便成功。我希望我设计的系统,能够得到广泛的应用。最后感谢老师和助教的辛勤教导,让我对数据库的知识又多了一份了解,感谢所有给与我帮助的人!谢谢!
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务