资源描述:
《数据库大作业-论坛管理信息系统.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《数据库课程设计》设计选题:论坛管理信息系统班级:船海1101班设计人:熊程珂学号:u辅导教师:董敏钦一、需求分析:1.1数据需求:论坛管理信息系统需要完成功能主要有:(1)作者信息模块:用来管理作者信息,包括作者昵称、贴子编号、性别、年龄、职业、爱好等;(2)贴子信息模块:用来管理贴子信息,包括贴子编号、发贴日期、时间、等级等;(3)回复日期模块:用来管理回复信息,包括作者昵称、回复时间、贴子编号等。1.2事物需求:(1)在作者信息模块部分,要求:a.可以查看作者的个人信息;b.可以对作者信息进行
2、添加及删除的操作。(2)在贴子信息部分,要求:a.可以浏览贴子信息;b.可以对贴子信息进行维护,包括添加及删除的操作。(3)在回复日期部分,要求:a.可以查看回复日期;b.可以对回复日期进行维护操作。二、数据库设计:2.1实体模型:回复信息作者1n回复发帖m1贴子2.2ER图到关系图的转换:作者昵称性别年龄职业爱好贴子回复时间时间日期编号作者昵称发贴编号编号等级回复信息回复2.3数据字典:author表:anoChar(10)不允许为空anameChar(10)不允许为空agenderChar(10
3、)允许为空aagesmallint允许为空aoccupationChar(10)允许为空ahobbyChar(10)允许为空post表结构:anoChar(10)不允许为空pdateChar(10)允许为空ptimeChar(10)允许为空pgradeChar(10)允许为空reply表:anoChar(10)不允许为空rnameChar(10)允许为空rtimeChar(20)允许为空三、关系图的建立:四、功能实现:4.1创建数据库:createdatabasexck;4.2创建数据表:(1)au
4、thor表:createtableauthor(anochar(10),anamechar(10),agenderchar(10),aagesmallint,aoccupationchar(10),ahobbychar(10)primarykey(ano,aname));(2)post表:createtablepost(anochar(10)primarykey,pdatechar(10),ptimechar(10),pgradechar(10));(3)reply表:createtablerepl
5、y(anochar(10)primarykey,rnamechar(10),rtimechar(20),);五、数据操作(插入、查询、删除、修改、添加)5.1插入:(1)向author表插入信息:insertintoauthorvalues('01','熊程珂','女',19,'学生','看书');insertintoauthorvalues('02','张武月','男',26,'医生','做实验');insertintoauthorvalues('03','李晶','女',34,'老师','游泳'
6、);insertintoauthorvalues('04','王亚彤','女',32,'HR','打球');insertintoauthorvalues('05','熊程珂','女',19,'学生','看书');(2)向post表插入信息:insertintopostvalues('01','2007年','4月8号','A');insertintopostvalues('02','2008年','4月14号','A');insertintopostvalues('03','2011年','5月18
7、号','B');insertintopostvalues('04','2005年','11月28号','A');insertintopostvalues('05','2012年','10月2号','C');(3)向reply表插入信息:insertintoreplyvalues('01','赵硕','2007年5月21号');insertintoreplyvalues('02','张树新','2008年7月16号');insertintoreplyvalues('03','王明','2011年8月1
8、号');insertintoreplyvalues('04','程珂','2005年12月11号');insertintoreplyvalues('05','郭云','2012年12月1号');5.2查询:(1)查询年龄在30岁以下的所有作者的名字和编号:selectaname,ano,aagefromauthorwhereaage<30;(2)查询贴子等级为A的所有贴子编号:selectano,pgradefrompostwherepgrade='A';(3)查询回