《[计算机软件及应用]数据库原理课程实验报告华北电力大学科技学院》由会员分享,可在线阅读,更多相关《[计算机软件及应用]数据库原理课程实验报告华北电力大学科技学院(35页珍藏版)》请在金锄头文库上搜索。
1、科 技 学 院课程设计报告( 2011- 2012年度第2学期)名 称: 数据库原理课程设计 院 系: 信息工程系 班 级: 软件09k2 学 号: 091909020227 学生姓名: 闫雪峰 指导教师: 乔玲玲 设计周数: 1 成 绩: 日期:2012年 6 月1日数据库原理课程设计 任 务 书一、 目的与要求1. 这门课是为计算机科学与技术专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力而设置的实践环节。通过这个环节,使学生拥有能够应用数据库原理对数据库系统进行设计的能力。为后继课程和毕业设计打下良好基础。2. 通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的
2、能力。3. 通过一个学生并不陌生的完整系统的设计,可以培养学生对需求分析、方案设计、系统编码、界面设计和软件调试等各方面的能力。是一门综合考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等涉及多课程的综合实验。二、 主要内容信息管理系统的设计与实现是针对一个实际中小型系统(见题目附录)进行的数据库设计,它需要管理的内容有实体以及实体之间的联系。1. 首先要求完成需求的理解和实体的设计:a) 设计实体的属性和码,以及该实体的实体完整性、用户自定义的完整性。b) 设计实体的之间的联系,包括联系的类型和联系的属性,即设计实体参照完整性。最后画出完整的E-R图。2根据设计好的E-R图
3、及关系数据库理论知识设计数据库模式:2.1 将E-R图转换为关系模式。2.2 设计关系模式间的参照完整性。2.3 用SQL语言实现数据库模式的设计。3实现信息管理系统所需的各种操作:3.1 用SQL语言实现信息的录入、删除和修改。3.2 以视图的形式完成各类查询,包括单表、多表、单条件、多条件等。4权限的设计:4.1 授权操作;4.2 收回权限的操作。5界面的设计、加密的设计。三、 进度计划序号设计(实验)内容完成时间备注1根据任务书完成信息模型的设计,并将该信息模型在选用的DBMS中实现,并录入数据1天2根据任务书完成各种数据操作,并以视图的形式保留SQL语句。并开始界面的设计与编码1天3使
4、用可视化开发工具开发学生工作管理系统(C/S或者B/S模式)1天4界面设计,权限设计和调试1天5系统的完善与验收1天四、 设计(实验)成果要求1 在DBMS(如SQL Server,DB2等)上完成完整的数据库的设计;2 使用可视化开发平台完成该系统,并要可以求正确的运行;3 完成实验报告。五、 考核方式1 在微机上检查数据库设计的模式的设计、完整性的设计等;2 在微机上检查系统的运行结果,并请学生解释所使用的技术;3 实验报告的检查。六、 题目附录1. 书籍管理系统小朋友有很多图书,有画画类、汽车类、贴纸类、故事类、儿歌类等,通过该系统我们可以方便查询,例如:输入某个故事的名字,可以查询该故
5、事在哪本书中,哪一页。2. 图书馆管理系统分析图书馆中所需要保存的各类信息,参照现有图书馆系统设计。3. 毕业设计管理系统每个毕业生有一个毕业设计题目,还有各自的指导老师,完成题目需要使用某种计算机语言,某种数据库。该系统可以根据学生信息(比如学生学号)查询到该学生的毕业设计题目及指导老师等信息,根据指导老师的信息也可以查询到该教师所指导的学生的信息及相应题目。学生姓名: 闫雪峰指导教师: 乔玲玲 年 月 日一、课程设计(综合实验)的目的与要求1.这门课是为计算机科学与技术专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力而设置的实践环节。通过这个环节,使学生拥有能够应用数据库原
6、理对数据库系统进行设计的能力。为后继课程和毕业设计打下良好基础。2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。3.通过一个学生并不陌生的完整系统的设计,可以培养学生对需求分析、方案设计、系统编码、界面设计和软件调试等各方面的能力。是一门综合考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等涉及多课程的综合实验。二、设计(实验)正文用户实体E-R图:2. 数据库关系模式设计:主要说明设计的表及其字段内容描述,并详细说明完整性设计。(1)book_class(class_id,class_name),其主关键字为class_id;(2)book(book_
7、id,book_name,book_store,book_information,book_class,love),其中主关键字为book_id,book_class为外键参照book_class表的class_id;(3)book_list(list_id,list_name,list_page_number,list_book_id)其中主关键字为list_id,list_book_id为外键参照book表的book_id;(4) story(id,name,comments,love,list,times,page,of_book)其中主关键字为id,of_book为外键参照book表的
8、book_id,list为外键参照book_list表的list_id.3. 写出实现各个数据库操作的sql语言。建立各个表2. 查询图书关键程序:query(select book_name from book where book_name like .$_GETbookName.%);while($row = $result-fetch_row()$arr$i+ = $row0;echo json_encode($arr);if($result != null)$result-free();?3. 添加操作 关键代码:query(insert into book_class (class
9、_name) values(.$_GETBookClassName.);$arrresult = $result;echo json_encode($arr);?关键程序:query(select book_id from book where book.book_name=.$_GETbookClassOfBook.);if($row = $result-fetch_row()$class = $row0;$resultInsert = $mysqli-query(insert into book_list (list_name,list_page_number,list_book_id)
10、values(.$_GETbookListName.,.$_GETbookListPage.,.$class.);$arrresult = $resultInsert;else$arrresult = false;echo json_encode($arr);?关键代码:query(select class_id from book_class where book_class.class_name=.$_GETbookClass.);if($row = $result-fetch_row()$class = $row0;$resultInsert = $mysqli-query(insert
11、 into book (book_name,book_store,book_information,book_class) values(.$_GETbookName.,.$_GETbookStore.,.$_GETbookComment.,.$class.);$arrresult = $resultInsert;else$arrresult = false;echo json_encode($arr);?添加故事关键代码:query(select book_id from book where book_name=.$_GETstoryOfBook.);if($row = $result-f
12、etch_row()$book_id = $row0;else$arrresult = false;$result = $mysqli-query(select list_id from book_list where list_name=.$_GETstoryOfList.);if($row = $result-fetch_row()$list_id = $row0;else$arrresult = false;$result = $mysqli-query(insert into story (name,times,page,of_book,list,comments) value(.$_GETstoryName.,.$_GETstoryIime.,.$_GETstoryPage.,.$book_id.,.$list_id.,.$_GETstoryComment.);if($result = false)$arrresult = false;else$arrresult = true;echo json_encode($arr);