1、数据库实习报告范例:图书管理系统 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 广州康大职业技术学
2、院 数据库课程小实训报告 设计题目:管理系统 学生姓名: 系 别:计算机系 专 业: 班 级: 学 号: 指导教师: 2011年 月 日 目录 一、概述 1.1项目背景……………………………………………………………3 1.2课程设计目的………………………………………………………3 1.3题目名称……………………………………………………………3 1。4开发环境……………………………………………………………3 二、需求分析 2。1 基本要求 ………………………………………………………4
3、2.2 实现的方法 ……………………………………………………4 三、数据库设计 3。1 概念模型设计………………………………………………………4 3。2 逻辑数据库设计……………………………………………………5 3。3 数据库的物理设计…………………………………………………6 四、系统实现的具体功能和创建的各类代码…………………………………7 五、实训心得……………………………………………………………………10 注:以上几点中第四点需要修改如下:包含系统实现中创建的各类代码(T—SQL语句)及运行后结果截图界面:范例如下 (1)把相关的Transaction—SQL
4、语句写下并截下运行后的结果图附在每个要求后面;如下图: 创建一个名为Library的图书管理数据库,并为它创建了一个主数据文件Library_Data和一个日志文件Library_log。存放在D盘指定文件夹(该文件夹应事先创建)下,主数据文件初始大小是5M,扩展文件时按10%的幅度增长,没有限制大小。 语句: create database test on (name= test _data, filename=’d:\data1\ test _data。mdf’, size=5, filegrowth=10% ) log on (name= test _log, f
5、ilename='d:\data1\ test _log。ldf’, size=2, filegrowth=10% ) 运行结果图 一、概述 1.1 项目背景 图书管理系统是学院图书馆事务管理的一个重要内容,管理图书馆的各种信息,对学院图书馆来说是很重要的,这也是图书管理员的一个大问题。在这种情况下,一个可以规范化,自动化的图书管理系统对于图书馆来说显得至关重要。 最初的图书管理,都是靠人力完成,在图书馆规模比较小的时候,人力可以很好完成,但随着规模的增大,图书数量越来越多,这种管理的压力也越来越
6、大,各种弊端显示出来。网络的到来给这带来了很大的便利,特别是对于图书管理员来说。 1.2课程设计目的 1. 熟悉大型数据库管理系统的结构与组成; 2. 熟悉数据库应用系统的设计方法和开发过程; 3. 掌握一种数据库管理系统SQL SERVER2005的应用技术; 4. 熟悉数据库设计工具的使用; 5. 熟悉数据库安全的相关知识和技术; 6. 熟悉数据库系统的管理和维护. 1。3题目及要求 题目:学院图书管理系统 图书管理员可以通过图书编号来查询到该图书的详细资料,并且查询出该书的借出还入情况,以及借书者的个人资料等,该系统为图书管理员的管理提供了方便快捷。 要求: 1.
7、 充分了解软件设计的全过程. 2. 从开始的系统需求分析到最后的代码编写,都要有详细的计划,设计文档应按照课程设计的要求书写。 3. 系统中的数据表设计应合理、高效,尽量减少数据冗余. 4. 数据库及表要易于维护、方便升级。 5. 必须包括数据库、表、查询、数据录入、删除、更新、约束建立等代码每人提交一个实训报告和可行的运行代码。 1.4 设计环境 1)、操作系统:windows XP 2)、数据库系统:Microsoft SQL Server 2005企业版 二、需求分析 2.1 基本要求 按照题目的要求,要实现的基本功能有以下几条: 1)能够输入图书的综合情
8、况和进行新书入库、现有图书信息修改以及删除; 2)能够实现对读者档案的查询和编辑管理; 3)能够进行罚款功能; 4)能够进行借阅历史的查询功能; 2.2 实现方法 按照要求,实现管理员的登录权限: 1)提供管理员对图书明细查询的功能; 2)管理员对图书等具有查询和修改权限; 3)按照借书的基本流程进行信息管理; 三、数据库设计 3.1 概念模型设计(E—R) 姓名 编号 密码 管理员信息 姓名 班级 性别 年龄 学生信息 地址 学号 图书编号 图书名 图书作者 图书价格 图书信息 作者性别 图书语言 出版时间 出版社
9、 图书编号 借出时间 还书时间 学生编号 借书信息 图书编号 损坏或丢失时间 更换时间 图书更换信息 3.2 逻辑数据库设计 针对图书管理信息系统的需求,通过对借书流程的分析,设计如下面的数据项和数据结构: 管理员信息表,包括的数据项有:(管理员编号、姓名、密码、); 学生信息表,包括的数据项有:(学号、姓名、班级、性别、年龄、住址);其中,学生学号设为主键约束; 图书信息表,包括的数据项有:(图书编号、图书名称、图书作者、图书价格、作者性别、图书语言、出版日期、出版社);其中图书编号设为主键约束; 借书信息表,包括的数据项有:(图书编号、借出时间、还书
10、时间、学生编号); 图书更换信息表,包括的数据项有:(图书编号、损坏或丢失时间、更换时间); 3。4 数据库的物理设计 完成了数据库的逻辑设计之后,即可开始数据库的物理设计。基于以上数据库逻辑设计,考虑到程序设计的简易性及通用性,本图书管理信息系统采用的SQL Servier数据库,并在其下创建了5个数据表。 管理员————— management 字段名 数据类型 长度与格式 关键字 编号(adno) Varchar 10 是 姓名(adname) Varchar 10 否 密码(admima) Varchar 20 是 学生--—-— st
11、uinfo 字段名 数据类型 长度与格式 关键字 学号(stuno) Varchar 20 是 姓名(stuname) Varchar 10 否 班级(class) Varchar 20 否 性别(stusex) Char 2 否 生日(birthday) Datetime 否 住址(stuplace) Varchar 50 否 图书——-—-bookinfo 字段名 数据类型 长度与格式 关键字 编号(bookno) Varchar 20 是 书名(bookname) Varchar 20 否 作者(b
12、ookauthor) Varchar 20 否 价格(bookprice) Varchar 10 否 作者性别(atsex) Char 否 语言(booklanguage) Varchar 10 否 出版日期(bookday) Datetime 否 出版社(bookplace) Varchar 10 否 借书记录-—--—lendinfo 字段名 数据类型 长度与格式 关键字 图书编号(bookno) Varchar 20 是 借出时间(lendday) Datetime 否 还入时间(returnday)
13、Datetimer 否 学号(stuno) Varchar 20 是 图书更换—----change 字段名 数据类型 长度与格式 关键字 图书编号(bookno) Varchar 20 是 损坏时间(losetime) Datetime 否 更换时间(changetim) Datetimer 否 四、系统实现创建的各类代码及界面截图 范例: (1)把相关的Transaction-SQL语句写下并截下运行后的结果图附在每个要求后面;如下图: 创建一个名为Library的图书管理数据库,并为它创建了一个主数据文件Library_
14、Data和一个日志文件Library_log。存放在D盘指定文件夹(该文件夹应事先创建)下,主数据文件初始大小是5M,扩展文件时按10%的幅度增长,没有限制大小。 语句: create database test on (name= test _data, filename='d:\data1\ test _data.mdf', size=5, filegrowth=10% ) log on (name= test _log, filename='d:\data1\ test _log.ldf', size=2, filegrowth=10% ) 运行结果图
15、 五、实训心得(不低于300字数) 这个星期是我们SQL Server 数据库管理课的实训,经过一个星期的实训,我对数据库这门课程有了更深的了解,简单的说下我对数据库的理解吧.我觉得它就是创建一些表格,然后再用一些语句根据他们之间的关系,把它们组合在一起,这周的实训我选择的是学院图书管理系统。首先我对创建该系统进行了项目背景与市场需求的分析,然后再开始动手做. 这次我们实训的内容是从数据库、数据表的创建和修改开始的,表是建立关系数据库的基本结构,用来存储数据具有已定义的属性,在表的操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中的数据及修改表和删除表的操作.从实训中让我更明白一些知识,表是数据最重要的一个数据对象,表的创建好坏直接关系到数数据库的成败,表的内容是越具体越好,但是也不能太繁琐,以后在实际应用中多使用表,对表的规划和理解就会越深刻。 其实现在想想数据库学起来也是不难的,但有一点必须注意,那就是上课必须跟着老师的进度走,一定要注意听讲,勤做笔记。这样,你学起来就会得心应手,没什么困难。 总之,这是一门很值得学的课程,自己学过获益匪浅,就算自己将来不从事这个行业,但是至少对数据不再陌生,甚至还略知一二。呵呵…谢谢老师~!






