SQL数据库课程设计
实验3:使用SQL语句创建并管理数据库

序号:云南大学软件学院实验报告课程:数据库原理与实用技术实验学期:2015-2016学年第二学期任课教师:张云春专业:信息安全学号:20141120206 姓名:严鑫成绩:实验3使用SQL语句创建并管理数据库做删除或修改操作时,请注意备份数据库一、CAP数据库1、用T-SQL语句创建并管理数据库CAP:记录创建数据库的SQL语句。
CREATE DATABASE capon(name='cap',filename='d:\cap.mdf',size=5mb,maxsize=30mb,filegrowth=10%)log on(name='caplog',filename='d:\cap.ldf',size=5mb,maxsize=25mb,filegrowth=1mb)2、修改数据库:将“CAP数据库”的数据库最大容量更改为无限制(UNLIMITED),然后将“CAP数据库”的日志文件增长方式改为2MB。
记录SQL语句。
alter database capmodify file(name=cap,filename='d:\cap.mdf',maxsize=unlimited)alter database capmodify file(name=caplog,filename='d:\cap.ldf',filegrowth=2)3、用T-SQL语句在“CAP数据库”创建数据表,数据表的结构见教材。
记录创建表的SQL语句。
create table customers(cid char(10)not null,cname char(10)not null,city char(10)not null,discnt char(10)null,primary key(cid))create table agents(aid char(10)not null,aname char(10)not null,city char(10)not null,[percent]char(10)null,primary key(aid))create table products(pid char(10)not null, pname char(10)not null, city char(10)not null, quantity char(10)not null, price char(10)not null, primary key(pid))create table orders(ordno char(10)not null, [month]char(10)not null, cid char(10)not null,aid char(10)not null,pid char(10)not null,qty char(10)not null, dollars char(10)not null, primary key(ordno))4、向表中添加记录,使用Insert Into 语句分别向四张表中添加教材上的数据记录。
以工作过程为导向的SQL Server2005数据库应用课程设计与实施

科技信息1、引言随着信息技术的不断发展,数据库在我们的社会生活中扮演着越来越重要的角色,它在金融管理、办公自动化、决策系统、信息检索、电子商务、电子政务等应用中发挥重要的作用,成为了全球信息化的重要支撑。
传统的“SQL Server2005数据库应用”课程教学内容是数据库系统说明书式的知识列表,数据操作是T-SQL 命令的罗列和解释,课程的教学体系距离社会对数据库应用的要求尚有相当大的距离,培养的工程技术人才远不能满足现代企业的要求,这与现代高职教育的理念是相违背的。
基于工作过程的课程体系颠覆了以知识传授为主要特征的传统学科课程模式,转而以工作任务为中心、以工作过程为导向,整合理论与实践,实现理论与实践的一体化;它强调在教师设计的教学情境中,以学生直接经验的形成来掌握并融合各项实践行动中的知识和技能,实现职业教育的教学过程与工作过程的融合,培养学生的综合职业能力。
2、基于工作过程的SQL Server2005数据库应用课程开发工作过程导向的课程实质,在于课程内容和结构追求的不是学科架构的系统化,而是工作过程的系统化。
基于工作过程的课程开发一般遵循以下步骤:(1)通过调研分析确定工作岗位;(2)根据工作岗位归纳出职业行动领域,并进一步提炼出典型工作任务;(3)将典型工作任务转化为学习领域涵盖的知识点及所需具备的职业能力和职业素养,构建课程体系;(4)设计学习情境,使学习情境与工作过程情境相似。
2.1确定工作岗位以笔者所在的张家界航空工业职业技术学院(以下简称“我院”)为例,SQL Server2005数据库应用是我院软件技术专业的一门专业核心课程。
我院软件技术专业主要培养JAVA 方向的软件开发人员,通过大量的网络调查和企业走访,结合我院实际情况,确定了软件技术专业的岗位定位如表1所示。
表1软件技术专业岗位定位从我院软件技术专业覆盖的各个岗位(尤其是“首岗”)来看,都需要掌握SQL Server 数据库技术,否则桌面开发或WEB 开发都将失去依托,更无法承担数据库管理员的工作;从另一角度来看,SQL Server 数据库技术课程也可以成为“Oracle ”课程的前序,为进一步掌握大型数据库系统打下坚实的基础。
宠物之家数据库课程设计

宠物之家数据库课程设计一、课程目标知识目标:1. 让学生掌握数据库的基本概念,如数据表、字段、记录等;2. 使学生了解宠物的基本信息分类,并能运用数据库对宠物信息进行有效管理;3. 培养学生对数据库查询语句(SQL)的基本应用能力。
技能目标:1. 培养学生运用数据库软件(如Access)建立、编辑和管理数据表的能力;2. 使学生能够运用SQL语句进行基本的数据查询、插入、删除和修改操作;3. 培养学生运用数据库技术解决实际问题的能力。
情感态度价值观目标:1. 培养学生对信息技术学科的兴趣,提高他们的学习积极性;2. 培养学生团结协作、解决问题的能力,增强他们的自信心;3. 培养学生关爱动物、保护环境的意识。
课程性质:本课程为信息技术学科,结合实际生活场景,以宠物之家为案例,教授数据库的基本知识和应用。
学生特点:六年级学生具有一定的计算机操作能力和逻辑思维能力,对新鲜事物充满好奇心。
教学要求:注重实践操作,让学生在实际操作中掌握数据库知识,培养解决问题的能力。
同时,结合宠物之家的实际案例,激发学生的学习兴趣,提高他们的情感态度价值观。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 数据库基础知识:- 数据库概念与作用- 数据表、字段、记录的定义与关系- 宠物信息数据表的构建2. 数据库软件操作:- Access软件的安装与启动- 数据表的创建、编辑与维护- 数据记录的添加、删除与修改3. SQL语句应用:- SQL基本查询语句(SELECT)- 条件查询(WHERE)- 数据插入(INSERT)、删除(DELETE)和修改(UPDATE)语句4. 实践案例:宠物之家数据库设计- 宠物信息数据表设计- 宠物领养、医疗、训练等数据表设计- 宠物信息管理系统的简单实现5. 教学大纲与进度安排:- 第一周:数据库基础知识学习,宠物信息数据表构建- 第二周:Access软件操作,数据表与记录的管理- 第三周:SQL语句学习与练习- 第四周:宠物之家数据库设计实践,成果展示与评价教学内容根据课程目标,结合课本知识体系,注重科学性和系统性。
数据库原理课程设计实验指导书(通用)

数据库原理课程设计实验指导书(通⽤)《数据库原理课程设计》实验指导书实验名称:数据库原理课程设计实验类型: 综合性实验学时:⼀周适⽤对象: 计算机科学与技术⼀、实验⽬的这门课是为计算机科学与技术专业的学⽣在学习数据库原理B后,为培养更好的解决问题和实际动⼿能⼒⽽设置的实践环节。
通过这个环节,使学⽣拥有能够应⽤数据库原理对数据库系统进⾏设计的能⼒。
为后继课程和毕业设计打下良好基础。
⼆、实验要求设计⼀个基于数据库的综合数据库管理系统,包括后台数据库的设计和前台⽤户终端的设计,具体题⽬四年不重复,要求:1.准备⼯作:在课外安装相关的数据库管理系统软件和开发⼯具软件,并根据参考书熟悉DBMS 的功能、结构,为后期综合实验打好基础。
2.概念模型的设计:根据题⽬要求,列出实体集,并应⽤E-R图描述实体的属性和实体之间的联系。
3.逻辑模型的设计:根据已建⽴好的E-R图选⽤关系模型设计关系表,包括设计关系表的属性、主码等,要求关系表中的属性名必须使⽤英⽂,呈现给⽤户的视图时显⽰中⽂。
4.完整性设计:包括实体完整性、参照完整性和⽤户⾃定义完整性的设计;⽐如年龄的范围、考试成绩的范围、职务的范围等。
并设计多表间的联系,⽐如学⽣表和成绩表,要求根据E-R图的设计设计关系表的外码,并举例说明。
5.规范化设计:使⽤范式理论证明你所设计的关系⾄少属于3NF,写出证明过程;否则进⾏模式分解,直到该关系满⾜三范式,并写出分解过程;6.SQL语⾔的考察:使⽤DBMS所⽀持的SQL语⾔完成关系表的建⽴,数据的插⼊、修改和更新等功能,着种考查关系表的查询(单表查询、多表查询和组合查询等,跟关系代数⼀起考查);7.图形化⽤户界⾯的设计:完成题⽬所要求的各种功能,并⽤菜单或者⼯具栏的形式组织各种功能(如数据的录⼊、查询、更新维护等);8.权限管理的设计:所设计的系统应该有⼀定的权限管理,不同的⽤户登陆完成功能是不⼀样的,对数据表的权限也不同。
北大青鸟S2sql数据库设计和高级查询总结

第一章数据库的设计良好的数据库设计1、节省数据库的存储空间2、能够保证数据的完整性3、方便进行数据库应用系统的开发糟糕的数据库设计1、效率低下2、更新和检索数据时会出现许多问题设计数据库的步骤1、需求分析阶段分析客户的业务和数据处理需求⑴收集信息⑵标识对象(实体)⑶标识每个对象需要存储的详细信息⑷标识对象之间的关系2、概要设计阶段绘制数据库的E-R模型图(实体关系图)3、详细设计阶段将E-R图转换为多张表,进行逻辑设计,并应用数据库设计的三大规范进行设计4、代码编写阶段映射基数1一对一2一对多3多对一4多对多实体关系图矩形表示实体集椭圆形表示属性菱形表示关系集直线用来连接设计数据库问题1 信息重复2 更新异常3 插入异常(无法表示某些信息)4 删除异常(丢失有用的信息)数据库设计的三大规范理论一第一范式的目标是确保每列的原子性二第二范式的目标是确保表中的每列都和主键相关三第三范式的目标是确保每列都和主键直接相关,而不是间接相关(不能传递依赖)规范化和性能的关系在必要的情况下允许适当的数据冗余第二章数据库的实现一建库ues mastergoif exists (select * from sysdatabases where name ='数据库名字')drop database 数据库名--判断这个数据库名字是否存在,如果存在删除create database 数据库名on [primary](name='',filename='',size ='', 建立数据库的主文件如果需要建立次要文件(ndf) 用逗号隔开maxsize ='',filegrowth ='')log on(name ='',filename='',size ='', 建立日志文件如果建立多个日志文件在后面用逗号隔开maxsize ='',filegrowth ='')go -- 批处理二建表ues 数据库名字goif exists (select * from sysobjects where name ='表名')drop table 表名--判断是否有这个名字的表create table 表名(字段名数据类型列的特征如stuid int identity(1,1) not null --identity 表示是否为自动增长)go三加约束1 主键约束(primary key constraint) --constraint 约束alter table 表名add constraint 约束名(PK_***) primary key(约束的字段)2 唯一约束(unique constraint)alter table 表名add constraint 约束名(uq_***) unique(约束的字段)3 检查约束(check constraint)alter table 表名add constraint 约束名(ck_***) check(约束的条件)4 默认约束(default constraint)alter table 表名add constraint 约束名(df_***) default('默认值') for 约束的字段5 外建约束(foreign key constraint)alter table 表名add constraint 约束名(fk_***) foreign key(约束的字段) references 主表的表名(主表的字段)总结create database 建库create table 建表add constraint 加约束drop database 删库drop table 删表drop constraint 删约束use master select * from sysdatabases 判断是否有库名select * from sysobjects 判断是否有表名完整性1 实体完整性(保证数据是唯一的如主键\唯一键\标示列)2 引用完整性(保证两表数据一致如外键)3 域完整性(保证数据的准确性如检查约束\默认约束\非空)三层安全模型1 登陆帐号-- 决定登陆服务windows 身份验证exec sp_grantlogin 'windows域名\域帐户'sql 身份验证exec sp_addlogin '帐户名','密码'2 数据库用户--访问数据库use 数据库名goexec sp_grantdbaccess '登陆帐户',('数据库用户') 如果不写数据库用户默认为登陆帐号名3 权限--在数据库里的操作use 数据库名gogrant 权限(增,删,改,查,建表(create table)) on 表名to 用户名第三章T-SQL编成使用变量一局部变量declare @变量名类型赋值: 1、set @变量名= 值2、select @变量名=值二全局变量@@error 最后一个T-SQL错误的错误号@@identity 最后一次插入的标示值@@language 当前使用的语言的名称@@max_connections 可以创建的同时连接的最大数目@@rowcount 受上一个sql语句影响的行数@@servername 本地服务器的名称@@servicename 该计算机上的sql服务的名称@@timeticks 当前计算机上每刻度的微秒数@@transcount 当前连接打开的事物数@@version sql server 的版本信息输出语句1、print 局部变量或字符串2、select 局部变量as 自定义列名(查询语句的特殊应用)逻辑控制语句1、if(条件)begin -- 开头语句end --结束else --为可选begin -- 开头语句end --结束2、while (条件)语句[break]3、casewhen 条件1 then 结果1when 条件2 then 结果2[else 其他结果]end批处理语句以一条命令的方式来处理一组命令的过程称为批处理批处理的好处就是能够简化数据库的管理第四章高级查询一简单子查询select *** from 表1 where 字段1 >(子查询) 它等于一个等值内连接将子查询和比较运算符联合使用,必须保证子查询返回的值不能多与一个二in 和not in 子查询in 后面的子查询可以返回多条记录select *** from 表1 where 字段1 in(not in)(子查询)三exists not exists子查询if exists (子查询)语句如果子查询的结果非空,则exists(子查询) 将返回真(true) ,否则返回假(false)第五章事务、索引和试图一事务:是一个整体,要么都成功,要么都失败事务时作为单个逻辑工作单元执行的一系列操作。
数据库请假系统课程设计

数据库请假系统课程设计一、课程目标知识目标:1. 学生能理解数据库的基本概念,掌握数据库的基本结构;2. 学生能掌握SQL语言的基本操作,如查询、插入、删除和修改数据;3. 学生能了解数据库设计与实现的基本原则,通过实际操作完成一个简单的数据库请假系统。
技能目标:1. 学生能运用所学知识,设计并创建一个数据库表格,实现数据的有效存储;2. 学生能运用SQL语言对数据库进行操作,实现数据的增删改查;3. 学生能通过编写简单的程序,实现数据库请假系统的基本功能。
情感态度价值观目标:1. 学生培养对数据库技术的兴趣,激发学习动力;2. 学生通过实际操作,培养团队协作意识,提高解决问题的能力;3. 学生在学习过程中,培养认真负责的态度,养成良好的编程习惯。
课程性质:本课程为实践性较强的课程,旨在让学生通过实际操作,掌握数据库的基本知识,培养实际应用能力。
学生特点:学生处于高年级阶段,已具备一定的计算机基础和编程能力,对数据库知识有一定了解,但实际操作经验不足。
教学要求:教师应注重理论与实践相结合,引导学生主动参与,培养其动手能力。
通过课程学习,使学生能够独立完成一个简单的数据库请假系统,提高其实际应用能力。
同时,关注学生的情感态度价值观培养,使其在学习过程中形成良好的学习习惯和团队协作意识。
二、教学内容1. 数据库基础知识回顾:数据库基本概念、数据模型、关系模型、实体-关系模型;2. 数据库设计:需求分析、概念结构设计、逻辑结构设计、物理结构设计;3. SQL语言操作:数据定义、数据操纵、数据查询、数据控制;4. 数据库实现:创建数据库、创建表格、索引、约束;5. 数据库编程:数据库访问技术、简单的存储过程和触发器;6. 实践项目:数据库请假系统设计与实现。
教学大纲安排:第一周:数据库基础知识回顾,介绍课程实践项目;第二周:数据库设计,包括需求分析、概念结构设计和逻辑结构设计;第三周:SQL语言操作,学习数据定义、数据操纵和数据查询;第四周:数据库实现,学习创建数据库、表格、索引和约束;第五周:数据库编程,学习数据库访问技术及编写简单的存储过程和触发器;第六周:实践项目,分组进行数据库请假系统设计与实现。
扬州大学数据库课程设计
扬州大学数据库课程设计一、课程目标知识目标:1. 让学生掌握数据库的基本概念、原理及设计方法,理解关系型数据库的结构与操作。
2. 使学生能够运用数据库管理系统(如MySQL、SQL Server等)进行数据查询、更新、删除等基本操作。
3. 帮助学生了解数据库的安全性和一致性,掌握基本的数据库维护方法。
技能目标:1. 培养学生运用数据库设计软件(如ERWin、PowerDesigner等)进行数据库设计的能力。
2. 提高学生使用SQL语句进行数据操作的能力,包括数据的增删改查等。
3. 培养学生分析实际应用场景,运用数据库知识解决实际问题的能力。
情感态度价值观目标:1. 培养学生严谨、细致的学习态度,养成良好的编程习惯。
2. 激发学生对数据库技术的研究兴趣,提高学生的自主学习能力。
3. 使学生认识到数据库在信息时代的重要性,增强学生的信息素养。
本课程针对扬州大学计算机科学与技术专业大三学生,结合课程性质、学生特点和教学要求,将课程目标分解为具体的学习成果。
在教学过程中,注重理论与实践相结合,以实际案例为引导,培养学生实际操作能力和解决问题的能力。
通过本课程的学习,期望学生能够掌握数据库的核心知识,具备一定的数据库设计和应用能力,为今后的工作和发展奠定基础。
二、教学内容本课程教学内容主要包括以下几部分:1. 数据库基本概念:介绍数据库的定义、发展历程、数据模型等基本知识,使学生了解数据库技术的基本框架。
2. 关系型数据库:讲解关系模型、关系代数、SQL语言基础,使学生掌握关系型数据库的基本原理和操作方法。
3. 数据库设计:讲授实体-关系模型、关系模型的设计方法,以及数据库设计工具的使用,培养学生进行数据库设计的能力。
4. 数据库管理系统:介绍数据库管理系统的功能、架构,以及常见数据库管理系统的特点和应用场景。
5. SQL语言:详细讲解SQL语言的查询、更新、删除等操作,使学生能够熟练运用SQL语句进行数据库操作。
sql数据库实例零件销售中心管理系统
(详细地调查分析系统对象、功能、性能等需求)l 供应商供应商的操作流程图如图 A1 所示。
增修删加改除供个应人项信息图 A1 供应商操作分类表2.顾客顾客的地位和供应商几乎是对称的,所以功能分类上也很相似.顾客的操作流程图如图 A2 所示。
增修删加改除需个求人项信息图 A2顾客操作分类表3.交易员生,并如何达成,可以用图 A3 来说明这个问题.我们在处理交易的时候可能面临如下问题:(1)一个交易只能在交易双方都同意的情况下才可以进行,所以数据库中的供求信息只能作 为达成某个交易的基础;(2)交易的双方可能不同时使用这个系统,因此需要系统提供一个双方交换信息的方式; (3)系统需要提供一种方便系统( 库数据完整性的情况下达成交易。
协议正书式草签案字供应 交 完易 商成员 以交签 及易发客签字 顾 供 应 项注册注销顾 客注册注销交易 员供应商 顾客提出 交易员提出提出交易 交易申请 交易建议图 A .3交易员操作图[概念模型设计](从实践概括抽象出理论模型 E/R )数据库需要表述的信息有以下几种: (1)零件信息 (2)供应商信息 (3)顾客信息(4)供应商集和零件集之间的联系(供应)简介供应商名价格数量零件名简介电话供应重量 地址供应商号零件号颜色N图 A .4 供应商和零件之间的联系(供应) E/R 模型(5)顾客集和零件集之间的联系(求购)零件号零件名数量价格顾客号颜色顾客名求购重量地址简介电话图 A .5 顾客和零件之间的联系(求购) E/R 模型M : N零件顾客M :零件供应商(6)交易(三元联系)可以用 E/R 模型表述该模型的设计,E/R 图如图 A7 所示。
零件号零件名简介数量颜色重量数量供应求购价格价格交易顾客号电话地址简介供应商名数量顾客名供应商号价格电话地址图 A .7全局 E/R 模型[逻辑设计](从理论‘E/R 模型’到理论‘关系模型’的整理转换)通过 E/R 模型到关系模型的转化,可以得到如下关系模式:(1)零件实体集转换为 Part(ID ,Color ,Name ,Weight ,Intro) (2)供应商实体集转换为 Provider(ID ,Name ,Addtess ,Tel ,Intro)关系:关系 (3)顾客实体集转换为 (4)供应联系转换为 关系 Customer(ID ,Name ,Addtess ,Tel) 关系 Supply(PartlD ,ProviderlD ,Price ,Quantity) (5)求购联系转换为OfferToBuy(CustomerlD ,PartID ,Price ,Quantity)(6)交易联系转换为Business(CustomerlD ,ProviderlD ,PartID ,Price ,Quantity) 关系 关系每个关系模式的主键码都用下划线标出。
教务系统mysql课程设计
教务系统 mysql课程设计一、课程目标知识目标:1. 理解MySQL数据库的基本概念,掌握数据库、表、记录等基本要素;2. 学会使用SQL语言进行数据库的增、删、改、查操作;3. 掌握数据库设计原则,能够进行简单的教务系统数据库设计。
技能目标:1. 能够独立安装和配置MySQL数据库环境;2. 能够运用SQL语言完成教务系统中数据的操作;3. 能够运用数据库设计原则,设计出合理的教务系统数据库。
情感态度价值观目标:1. 培养学生对数据库知识的学习兴趣,提高主动探究问题的能力;2. 培养学生的团队协作意识,学会与他人共同解决问题;3. 培养学生严谨、细心的学习态度,认识到数据管理在实际应用中的重要性。
课程性质:本课程为实践性较强的课程,以理论教学为基础,注重培养学生的动手操作能力。
学生特点:高中年级学生,具备一定的计算机操作基础,对数据库知识有一定的了解。
教学要求:结合学生特点,采用任务驱动法,引导学生通过实践掌握MySQL 数据库的操作,培养其数据库设计能力。
在教学过程中,关注学生的个体差异,给予不同层次的学生个性化指导,确保课程目标的达成。
同时,注重培养学生的团队协作能力和解决问题的能力,使其在完成课程学习的同时,提升综合素养。
二、教学内容1. MySQL数据库基础知识:- 数据库的基本概念与作用;- MySQL数据库的安装与配置;- 数据库、表、记录的基本操作。
2. SQL语言操作:- 数据库表结构的创建与修改;- 数据的插入、删除、修改和查询;- 索引与约束的创建与管理。
3. 数据库设计:- 数据库设计原则与方法;- 实体关系模型转换;- 教务系统数据库设计实例分析。
4. 教务系统数据库应用:- 教务系统数据库的需求分析;- 数据库设计步骤与实现;- 数据库的优化与维护。
教学内容安排与进度:第一周:MySQL数据库基础知识学习;第二周:SQL语言操作实践;第三周:数据库设计理论;第四周:教务系统数据库设计与实现。
基于工作过程的《sql server》课程设计的探讨
教育教学基于工作过程的((SQ L Ser ver))课程设计的探讨柴作良(安顺职业技术学院,贵州安顺581000)【}商耍]本文侧重于从基于工作导向角度,按照基于工作过程的课程设计的思路。
从典型工作到行动领域、从行动领域到学习领域、从学习领域到学习情境的转换,探讨了基于工作过程的毽Q L seⅣe谤课程设计思路及方法。
陕键词]基于工作过程;行动领域;学习领域;学习情境sQ L s er ver高职教育相继实施了一系列重大教学改革工程,使高职教育的教育教学理念、人才培养模式和能力目标、课程体系与教学内容、教材建设等都发生了深刻的变化。
随着高职改革的不断深化,课程建设已经成为高职教育的重要部分。
当前,我院从规模发展逐渐转向内涵式发展方向,专业建设中课程建设成为提高教学质量、树立品牌的重要途径和改革之首,以下简单谈谈基于工作过程的(SQ LServer)课程设吼-二、课程设计思路6Q L Se rve r)课程是计算机网络技术、计算机应用技术等专业的核,∽累程之一,同时也是计算机类相关专业的选修课程,学习本课程需要具备计算机基础、网络基础方面的知识。
本课程的设计是基于计算机网络技术专业而进行的设计。
在课程设计时,首先实现了以下三个理念的转变。
1)在主观上将职业工作作为—个整体化的行为过程进行分析。
2)在培养目标中强调创造力(设计能力)的培养,而不是被动的适应技能训练。
3)构建“工作过程完整”而不是“学科完整4的学习过程。
将“工作过程中的学习“和“课堂£的学习”整合为—个整体,课程的开发必须将职业分析、工作分析、企业生产过程分析、个^发展目标分析与教学分析和教学设计结合在—起,即“基于工作过程的”课程的设计。
按照基于工作过程的课程设计的思路,课程的整体设计历经了三个转换:典型工作到行动领域的转换一行动领域到学习领域的转换一学习领域到学习情境的转换。
二、课程能力目标设计(-一)工作过程任务及能力分析数据库使用、管理和开发主要涉及到数据库软件的使用、网站管理、数据库管理、软件设计等岗位,在进一步对这些岗位调研和分析的基础上,得出以下岗位及工作任务、土作能力对应表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库课程设计 图书管理系统数据库设计
姓名:贺佳伟
学号: 指导教师:童蔚苹 1 / 29
一、数据库需求分析 1.1 用户需求 1.1.1 系统现状及主要解决问题 近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍的增加,面对着庞大的信息量,传统的人工方式管理的记录中我们可以发现这样的问题: (1)检索速度慢、效率低。因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非常困难往往是终于查到了书的信息,馆中没有此书或已被别人借走。图书馆的规模越大,这个问题越突出。 (2)借书、还书工作量大。借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、 还书登记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往 往是人工操作所难以胜任的。而且经常会出现这样那样的差错。 (3)图书统计工作难、藏书更新不能及时完成。图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。 因此必须制定一套合理、有效、规范和实用的图书管理系统,对图书资料进行集中统一的管理。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。使图书管理者便于对图书和读者的管理。本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。使用该系统之后,图书馆管理人员可以管理读者的登记、图书的购入、借出、归还以及注销等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的流通情况 。
1.1.2 要达到的具体指标 (1)可随时查询书库中现有书籍的种类、数量与存放位置。所有各类书籍均可由书号唯一标识。 (2)可随时查询书籍借还情况。包括借书人单位、姓名、借书证号、借书日期和还书日期。任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。 (3)当需要时,可通过数据库中保存的出版社电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。
1.2 业务流程分析 1.2.1 系统的业务流程 对于图书管理系统,其内部数据应该包括图书信息,读者信息,系统用户信息,借阅情况的信息。这些数据对于图书管理系统来说,缺一不可。其中,图书信息应该包括图书名称,图书的作者,图书编码,查询该图书的关键词等;读者信息应该包括读者姓名,读者单位,读者的借书证号,读者的借书数量等;系统用户信息包括用户名,密码等,借阅情况信息包括图书的借书日期,图书证号,图书编码等。 有了该系统,读者可以通过书籍的名称、作者姓名或关键字等条件查找到自己想要的书籍,2 / 29
包括书籍编号、出版时间、书籍数量、剩余数量等。然后到图书馆进行借阅就可以了,也可以通过该系统进行预借。图书管理员通过该系统可以对图书进行3大操作:删除、增加以及查询;而对学生的管理中就有4项:借书、还书、增加和删除记录、查询等。
1.2.2系统业务流程图
图1-1 系统业务流程图 开始 管理员登陆
书库维护 读者维护 图书添加 图书注销 图书查询 添加 删除 借书 输入图书编号 此书是否在库 输入读者学号 借书成功 添加成功 删除成功 还书
是否超期 还书成功
结束
Y Y Y Y N N N N N
N N 3 / 29
1.3 功能需求分析 1、安全性管理:给每个管理员一个用户名和密码,以登录图书馆管理系统,便于身份验证,管理员可以拥有最高权限对数据库进行所有操作。同样拥有一个用户名和密码,但普通用户只能进行查询操作,看个人信息和图书馆中图书信息不可修改它们。 (1)管理员:增加、删除、查询、修改图书信息; 增加、删除、查询、修改读者信息; 图书借出、图书归还、逾期还书处理、图书注销 (2)读者: 查询图书信息、查看借书情况、查询个人信息、历史借书情况、超期还书警告。
2、读者信息管理:该功能模块用于管理相关的读者信息,包括的子功能模块如下图所示
图1—2 读者信息功能模块 “读者类型”用于设置读者的类型及相关的信息,内容包括读者的身份、可借册数,可续借次数等。 “读者档案管理”用于设置读者相关的信息,内容包括编号、姓名、身份、读者性别、联系方式、登记日期、有效期至、违规次数、现借图书数、是否挂失。 “借书证挂失与恢复”用于挂失和恢复读者的借书证,挂失后该编号的读者不能再借书。
3、图书管理:该功能模块用于管理图书相关的信息包含的功能模块如下图所示
读者信息 读 者 类 型 管 理 读 者 档 案 管 理 借 阅 证 挂 失 与 恢 复 4 / 29
图1—3 “图书管理”功能模块 “图书基本信息设置”用于设置图书的类型及相关的信息,内容包括ISBN、书名、版次、类型、作者、出版社、价格、现存量、库存总量。 “图书档案管理”用于设置图书相关信息,内容包括编号、ISBN、入库时间。 “图书征订”用于订购新图书,内容包括征订编号、ISBN、订购数量、订购日期。 “图书注销”用于注销图书,被注销的图书不可以再借出,并且应将图书信息进行修改。 “图书查看”用于查看某本书的情况。 “图书盘点”输出图书的在库清单供盘点使用。
4、图书流通管理:此功能模块用于管理图书流通环节的相关的操作,包括如下图所示的功能模块。
图1—4 “图书流通管理”功能模块 图书馆流通管理 图书借阅 图书归还 图书丢失 图书罚款
图书管理 图 书基本信息 图书档案管理 图书征订 图书盘点 图书查看 图 书注销 5 / 29
“图书借阅”用于登记读者借阅图书的记录并减少图书在库的库存,登记内容包括借阅编号、图书编号、读者编号、借阅时间、应还时间、续借次数、图书状态等。图书馆管理员作为借阅者的代操纵借书和还书者。借书时只要输入借阅的书刊编号就可以,然后输入借阅者的借阅卡号,完成后提交,系统验证借阅者是否有效,若有效借阅请求被接收并处理,系统将库存中图书数量减一,同时将读者信息中借书量加一。 “图书归还”用于登记读者归还图书的记录并增加图书在库的库存,登记内容包括归还编号、图书编号、读者编号、归还时间等。系统查询借阅此书的人的信息以及该书被借日期判断是否过期,若过期将进行罚款,并将该书刊的借阅记录改为已还。 “图书丢失”用于报失图书,内容包括丢失编号、图书编号、读者编号、赔偿金额、操作时间等。 “图书罚款”用于对图书超期、丢失等情况的罚款管理,内容包括罚款编号、图书编号、读者编号、罚款日期、罚款金额、是否交款、备注等。
5、系统功能层次图如图1—5所示:
图1-5系统总流程图 管理员
读者 信息 流通 管理 图书 信息
图书借阅 图书归还 图书征订 图书罚款 修改 查询 查询 修改 图书注销 6 / 29
二、数据库概念设计 2.1 ERD的四条原则及相应得出的实体、联系、属性以及实体的标识特征 根据 ERD 的四条原则:
原则1:能独立存在的事物,在其有多个由基本项描述的特征需要关注时,就应把它作为实体。在系统中,可得知有“图书”、“读者”、“出版社”3个实体。 原则2:两个或多个实体间的关联与结合,当需要予以关注时,应作为联系。在系统中,可以得知有“借阅图书”和“购买图书”两个联系。 原则3:实体的属性是实体的本质特征;联系的属性是联系的结果或状态。 原则4:信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性得出。
在系统中,可以得出: 图书信息(图书编号,书名,作者,出版社,种类) 读者信息(读者学号,姓名,专业与班级,学院与年级,已借书数,允许借书数) 管理员信息(管理员编号,姓名,管理员密码,管理员权限) 借阅图书(读者学号,图书编号,书名,借阅日期,归还日期) 归还图书(读者学号,图书编号,书名,借阅日期,归还日期) 出版社(出版社名,联系人,电话,邮编,地址) 书架(图书编号,书名,位置)
2.2画出并改进ERD 如图2-1所示为改进后的整体E-R图。 7 / 29 图2-1 改进后的整体E-R图
三、数据库逻辑设计
管理员 姓名 经办 借还书登记表
借还 读者
是否超期
上次借期 是否借满
借书日期
清点 盘目单
所盘 盘存
实际数 盈余数 位置 书架
图书编号 书名
采购 编号 工作 用户 密码 电话 地址 所借还 图书 供应 供书单 出版社名 学号 姓名 专业与班级 学院与年级 已借书数 允许借书数 电话 邮编 地址 联系人 职称号 出版社