当前位置:文档之家› 数据库ATM系统实训报告

数据库ATM系统实训报告

数据库ATM系统实训报告
数据库ATM系统实训报告

目录

一、引言 (2)

1.1编写目的 (2)

1.2参考资料 (2)

二、需求规约 (3)

2.1业务描述 (3)

2.2需求分析 (3)

三、数据库环境说明 (5)

四、逻辑设计 (6)

五、物理设计 (7)

5.2数据库表物理设计 (7)

表[1]:交易信息表 (7)

表[2]:用户信息表 (8)

表[3]:银行卡信息表 (9)

5.3视图的设计 (10)

5.4存储过程及触发器的设计 (10)

六、安全性设计 (18)

6.1 防止用户直接操作数据库的方法设计 (18)

七、数据库设计的测试说明 (19)

7.1测试用例 (19)

7.2设计结论 (24)

八、实训总结 (25)

一、引言

1.1 编写目的

本文档ATM自动取款机系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,使开发人员能据此开发该系统。

1.2 参考资料

二、需求规约

2.1 业务描述

某银行拟开发一套ATM取款机系统,实现如下功能:

1、开户(到银行填写开户申请单,卡号自动生成)

2、获取密码(给出卡号,获取相应密码)

3 解除挂失(给出卡号,解除挂失)

4、修改密码(给出卡号,将旧密码修改为新密码)

5、挂失(给出卡号,登记挂失信息)

6、催款提醒(帐号余额小于等于某个值(比如100)时返回客户的姓名及联系电话(业务员可以催

款提醒用户)。

7、周交易(查询某卡前一周的交易信息)

8、查询最高消费(查询消费最高的卡号)

9、查询挂失卡号(查看所有挂失的卡号)

10、统计余额盈利(统计银行的资金流通余额和盈利结算。计算公式为:资金流通余额=总存入量-

总支取量盈利结算=总支取量*0.008-总存入量*0.003)

11、存款取款存取过程(实现存款取款功能。取款要求输入密码)

12、转账交易存储过程(某卡上的款转帐到另一卡上。要求事务处理

2.2 需求分析

根据银行方面取得的信息资料,得出系统的信息需求和处理要求,得到设计所需的需求信息。这些信息是选择了对数据库设计直接有用的信息。

1、A TM自动取款机系统用例分析:

用户

管理员

存款:客户在ATM机上实现现金的存储开户:管理者对客户要求进行开户处理。

取款:客户在ATM机上实现现金的取款挂失账户:管理根据客户要求对丢失的卡进行挂失

转账:客户在ATM机上实现转入钱的功能解冻账户:管理根据客户要求对找到的卡进行解冻查询:客户在ATM机上实现余额查询的功能修改密码:管理根据客户要求对密码进行修改

2、A TM自动取款机系统的业务逻辑分析:

(1)首先是用户插入银行卡

(2)用户自行输入密码

(3)ATM连接银行的数据库,判断卡号密码是否正确,正确就到操作界面,否则从新输入。

(4)操作界面有取款,存款,转账,密码修改。

(5)完成用户需求后退出卡

三、数据库环境说明

四、逻辑设计

ATM系统需要有用户信息,还要银行卡的信息,还需要交易信息,以供银行人员查询。

(1)用户信息包括记录开户客户的相关信息存储开户客户的客户编号、姓名、身份证号、居住地址和联系电话

(2)交易信息记录银行卡的相关信息存储卡号号、货币类型、存款类型、开户日期、开户金额、余额和顾客编号

(3)银行卡记录交易的相关信息存储交易日期、交易卡号、交易类型、交易金额和备注信息

五、物理设计

5.2 数据库表物理设计表[1]:交易信息表

表[2]:用户信息表

表[3]:银行卡信息表

5.3视图的设计

1、建立一张最高交易信息的视图

目的:查找最高交易。

功能:能够及时展现最高交易。

意义:有利于数据库安全的维护,防止任意修改数据库中的交易信息

---最高交易

create view view_mosttransinfo(cardID,transMoney)

as

select cardID,MAX (transMoney) from transinfo group by cardID; select *from view_mosttransinfo

2、建立一张周交易信息的视图

目的:查找一周内某卡得所有交易。

功能:能够及时展现一周的交易信息。

意义:有利于数据库安全的维护,防止任意修改数据库中的交易信息

--周交易

create view view_transinfo

as

select transDate,cardID,transType,transMoney from transinfo where datediff(ww,'2013-06-10 00:00:00.0000000',getdate())=0;

select *from transinfo;

2、建立一张查询挂失卡号的视图

目的:查找所有挂失了的卡号。

功能:能够及时展现那些卡号挂失了。

意义:有利于数据库安全的维护,防止客户信息泄露

--查询挂失卡号(查看所有挂失的卡号)

create view view_IsReportLoss

as

select cardID,IsReportLoss from cardinfo where IsReportLoss='是'; select *from view_IsReportLoss;

5.4 存储过程及触发器的设计

5.4.1 产生随机卡号存储过程

功能:随机生成卡号

目的:让客户能拿到随机的卡号,能避免重复的卡号出现

意义:用随机卡号能让客户使用到随机的卡号

代码:

create procedure proc_cardinfo-----------创建开户存储过程

(

@savingType char(15),

@openMoney money,

@balance money,

@customerID int

)

as

---*---------------声明固定的数字与随机的数字-------------------*/

declare @tempStr varchar(10)

set @tempStr='1010 3576 '

declare @r numeric(10,8) --后8位随机数

/*----------------------产生随即因子----------------------*/

select @r=rand( (datepart(mm,getdate() )*10000) +(datepart(ss,getdate() )*1000) +datepart(ms,getdate()) )

/*-----截取@r中小数点后的四位随机数,再添加空格,再截取最后四位--*/

declare @cardID char(30)

set @cardID =@tempStr+substring(convert(varchar(10),@r),3,4)+' '+substring(convert(varchar(10),@r),7,8)

INSERTINTOcardInfo(cardID,savingType,openMoney,balance,customerID)VALUES(@cardID,@savingT ype,@openMoney,@balance,@customerID)

5.4.2 解除挂失存储过程

功能:实现银行卡解除挂失功能

目的:银行卡找回或者记起密码银行卡解除挂失

意义:更好地保护客户信息

代码:

create procedure update1_IsReportLoss----------创建解除挂失存储过程

(@customerID varchar(20),

@cardID varchar(20),

@PID char(18)

)

as

declare @IsReportLoss char(8)

begin

if not exists(select *from cardInfo where customerID=@customerID)

print '您输入的顾客编号不存在'

else if(@PID!=(select PID from userinfo where @customerID=customerID))

print'身份证错误,不能解挂。'

else if((select cardID from cardinfo where @customerID=customerID)!=@cardID)

print'卡号错误,不能解挂。'

else if((select IsReportLoss from cardinfo where @customerID=customerID)='否')

print'卡号未挂失,不用解挂。'

else

begin

update cardinfo set IsReportLoss='否' where cardID=@cardID;

end

end

5.4.3 获取密码存储过程

功能:获取密码

目的:能使客户获取密码

意义:是有效地保护密码不被盗取

代码:

create procedure get_pass----------创建获取密码存储过程

(

@cardID varchar(20)

)

as

declare @pass char(6)

begin

if not exists(select * from cardinfo where cardID=@cardID)

print'该卡号不存在'

else

begin

select @pass=pass from cardinfo where @cardID=cardID

print '卡号:'+convert(varchar(30),@cardID) +'密

码:'+convert(varchar(15),@pass)

end

end

5.4.4 修改密码存储过程

功能:修改密码

目的:使客户能使用旧密码修改新密码

意义:更加人性化地修改密码

代码:

create procedure update_pass----------创建修改密码存储过程

(

@cardID varchar(20),

@1pass varchar(6),

@2pass varchar(6)

)

as

if not exists(select *from cardInfo where cardId=@cardId)

print '您输入的账号不存在'

else if(@1pass!=(select pass from cardInfo where cardID=@cardID)) print '原密码输入错误。'

else

begin

print '输入新密码。'

update cardinfo set pass=@2pass where cardID=@cardID;

5.4.5 挂失存储过程

功能:实现银行卡挂失功能

目的:银行卡丢失或密码忘记使银行卡挂失

意义:更好地保护客户信息

代码:

create procedure update_IsReportLoss----------创建挂失存储过程

(@customerID varchar(20),

@cardID varchar(20),

@PID char(18)

)

as

declare @IsReportLoss char(8)

begin

if not exists(select *from cardInfo where customerID=@customerID)

print '您输入的顾客编号不存在'

else if(@PID!=(select PID from userinfo where @customerID=customerID))

print'身份证错误,不能挂失。'

else if((select cardID from cardinfo where @customerID=customerID)!=@cardID) print'卡号错误,不能挂失。'

else if((select IsReportLoss from cardinfo where @customerID=customerID)='是')

print'卡号已挂失,不用挂失。'

else

begin

update cardinfo set IsReportLoss='是' where cardID=@cardID;

end

end

5.4.6 催款提醒存储过程

功能:催款提醒

目的:银行能根据存款信息返回客户信息以提醒客户存款

意义:能有利于银行管理客户银行卡信息

代码:

create procedure pro_ckts----------创建催款提醒存储过程

(

@cardID char(30)

)

as

declare @balance money,@telephone char(15), @customerID int

begin

if((select balance from cardInfo where cardID=@cardID)>100)

print '该帐户不需要提醒'

else

select @balance =balance from cardInfo where cardID=@cardID

select @customerID=customerID from cardinfo where cardID=@cardID

select @telephone =telephone from userinfo where customerID=@customerID

print '业务员提醒该帐户余额不足100元'

print '卡号:'+convert(varchar(30),@cardID)+'余额:'+convert(varchar(20),@balance) +'电话:'+convert(varchar(15),@telephone)

end

end

5.4.7 统计银行的资金流通余额和盈利结算

功能:计算银行盈利额

目的:统计银行的资金流通余额和盈利结算

意义:为银行提供盈利信息

代码:

create procedure proc_money ----------创建计算银行盈利额存储过程

as

declare @1money money,@2money money,@t money ,@d money

select @1money = SUM(transMoney) from transinfo where transType ='存入'

select @2money = SUM(transMoney) from transinfo where transType ='支取'

set @t=@1money -@2money

set @d=0.008*@2money -0.003*@1money

print '资金流通余额:'+convert(varchar(20),@t)+'盈利结算:'+convert(varchar(10),@d)

5.4.8 创建存钱和取钱的存储过程

功能:存钱和取钱

目的:进行客户与银行间的交易

意义:能使客户更好地管理自己的金钱

代码:

create procedure proc_takeMoney ----------创建取款存储过程

(

@cardID varchar(20),

@pass varchar(6),

@money Money

)

as

declare @balance money,@IsReportLoss char(8)

begin

if not exists(select *from cardInfo where cardId=@cardId)

print '您输入的账号不存在'

else if((select pass from cardInfo where cardID=@cardID)!=@pass)

print '密码不正确。'

else if((select IsReportLoss from cardInfo where cardID=@cardID)='是')

print '卡已挂失, 交易不能进行。'

else if( @balance-@money < 0)

print '交易失败,余额不足。'

else if(convert(int,@money )%100!=0)

print '本柜员机只提供面值100元的纸币,取款金额为100的整数倍。'

else if((select balance from cardInfo where cardID=@cardID)-@money <1)

print '取款后余额不能低于1元'

else

begin

update cardInfo set balance = balance - @money where cardID=@cardID

select @balance= balance from cardinfo where cardID=@cardID

insert transInfo(transDate ,cardID,transType,transMoney,remark) values(default,@cardID,'支取',@money ,'') print '交易成功'

print '交易金额:'+convert(varchar(10),@money)

print '卡号:'+convert(varchar(18),@cardID)+' 余额:'+convert(varchar(10),@balance)

end

end

create procedure proc_saveMoney ----------创建存款存储过程

(

@cardID varchar(20),

@pass varchar(6),

@money money

)

as

declare @balance money,@IsReportLoss char(8)

begin

if not exists(select *from cardInfo where cardId=@cardId)

print '您输入的账号不存在'

else if((select pass from cardInfo where cardID=@cardID)!=@pass)

print '密码不正确。'

else if((select IsReportLoss from cardInfo where cardID=@cardID)='是')

print '卡已挂失, 交易不能进行。'

else if(convert(int,@money )%100!=0)

print '本柜员机只存入面值100元的纸币,存款金额为100的整数倍。'

else

begin

update cardInfo set balance =balance + @money where cardID=@cardID

insert transInfo(transDate ,cardID,transType ,transMoney,remark) values(default,@cardID,'存入',@money,'')

select @balance =balance from cardInfo where @cardID=cardID

print '交易成功'

print '交易金额:'+convert(varchar(10),@money)

print '卡号:'+convert(varchar(20),@cardID)+'余额:'+convert(varchar(10),@balance)

end

end

5.4.9 创建转账交易的存储过程

功能:转账交易

目的:将一个卡上的资金转入另一个卡中

意义:提供转账交易避免现金交易,提高资金安全性。

代码:

create procedure zhuanzhang--------创建转账存储过程

@cardID varchar(20),

@cardID1 varchar(20),

@pass int,

@zhuanzhang int

as

begin tran

if exists(select *from cardinfo where cardID =@cardID)

begin

declare @pass1 int

set @pass1=(select pass from cardinfo where cardID=@cardID)

if(@pass1=@pass)

begin

if exists(select *from cardinfo where cardID=@cardID1)

begin

declare @zhuanzhang1 int,@balance money

set @zhuanzhang1=(select balance from cardinfo where cardID=@cardID1)

if(@zhuanzhang<@zhuanzhang1)

begin

insert transInfo(transDate ,cardID,transType,transMoney,remark) values(default,@cardID,'支取',@zhuanzhang ,'')

update cardinfo set balance=balance-@zhuanzhang where cardID=@cardID

insert transInfo(transDate ,cardID,transType ,transMoney,remark)

values(default,@cardID1 ,'存入',@zhuanzhang,'')

update cardinfo set balance=balance+@zhuanzhang where cardID=@cardID1

select @balance =balance from cardInfo where cardID=@cardID

commit;

print'转账成功!'

print '交易金额:'+convert(varchar(10),@zhuanzhang)

print '卡号:'+convert(varchar(20),@cardID)+'余额:'+convert(varchar(10),@balance)

end

else

begin

print'不能转账,余额不足'

rollback tran

end

end

else

begin

print'转账号码不存在' rollback tran

end

end

else

begin

print'密码输入错误' rollback tran

end

end

else

begin

print'卡号不存在'

rollback tran

end

六、安全性设计

6.1 防止用户直接操作数据库的方法设计

首先建一个用户名,设置密码

exec sp_addlogin 'zw','123456','ATM' ---用户名登录,密码为,默认数据库为ATM 在建立一个角色名r1

create role r1;

使用GRANT语句,使角色r1拥有表userinfo表的权限

grant select,update,insert

on table userinfo To r1;

七、数据库设计的测试说明

7.1 测试用例

1.开户功能测试

测试用例编号:ATM-TestCase-1

测试目的:测试ATM储户开户功能

测试输入:

exec proc_cardinfo

@savingType='活期',

@openMoney =1000,

@balance =1000,

@customerID =6

预期输出:

用户编号为:6;开户金额:1000;账号为:1010 3576 0000 0000;存款类型:活期;实际输出:

测试结论:业务需求要求的开户功能达到了设计要求。

2、修改密码功能测试

测试用例编号:ATM-TestCase-2

测试目的:测试ATM储户修改密码功能

测试前提:数据库中存在你输入的卡号,旧密码。

测试输入:

exec update_pass

@cardId ='1010 3576 5524 4986 ',

@1pass='888888',--旧密码

@2pass='123456'--新密码

预期输出:

密码由888888改为123456

实际输出:

测试结论:

业务需求要求的修改密码功能达到了设计要求。

3、获取密码功能测试

测试用例编号:ATM-TestCase-3

测试目的:测试ATM储户获取密码功能

测试前提:数据库中存在你要获取密码的卡号,密码。

exec get_pass

@cardID='1010 3576 5589 5986 '

预期输出:

卡号:1010 3576 5589 5986 密码:123456

实际输出:

测试结论:业务需求要求的获取密码功能达到了设计要求。

4、挂失功能测试

测试用例编号:ATM-TestCase-4

测试目的:测试ATM储户挂失功能

测试前提:数据库中存在卡号,身份证号,客户编号。

测试输入:

exec update_IsReportLoss

@customerID='3',

@PID='145578999524125',

@cardID ='1010 3576 5524 4986'

预期输出:

1010357655244986账号的挂失栏由‘否’改为‘是’实际输出:

测试结论:业务需求要求的挂失功能达到了设计要求。

5、解挂功能测试

测试用例编号:ATM-TestCase-5

测试目的:测试ATM储户解挂功能

测试前提:数据库中存在卡号,身份证号,客户编号。

测试输入:

exec update_IsReportLoss

@customerID='3',

@PID='145578999524125',

@cardID ='1010 3576 5524 4986'

预期输出:

1010357655244986账号的挂失栏由‘是’改为‘否’实际输出:

测试结论:业务需求要求的挂失功能达到了设计要求。

6、催款提醒功能测试

测试用例编号:ATM-TestCase-6

测试目的:测试催款提醒功能

测试前提:数据库中存在卡号,客户编号,客户身份证。

《数据库技术与应用 》实验报告

《数据库技术与应用》上机实验报告 目录: 一、概述 二、主要上机实验内容 1.数据库的创建 2.表的创建 3.查询的创建 4.窗体的创建 5.报表的创建 6.宏的创建 三、总结 一、概述 (一)上机内容: 第七周:熟悉Access界面,数据库和表的创建,维护与操作 1. 熟悉Access的启动,推出,界面,菜单,工具栏等; 2. 练习使用向导创建数据库、创建空数据库; 3. 练习创建表结构的三种方法(向导、表设计器、数据表)、表中字段属性设置; 4. 练习向表中输入不同类型的数据; 5. 练习创建和编辑表之间的关系; 6. 练习表的维护(表结构、表内容、表外观) 7. 练习表的操作(查找、替换、排序、筛选等) 第八周:练习创建各种查询 1.选择查询(单表、多表、各种查询表达式) 2.参数查询 3.交叉表查询 4.操作查询(生成查询、删除查询、更新查询、追加查询) 第十周:练习创建各种类型的窗体 1.自动创建纵栏式窗体和表格式窗体; 2.向导创建主|子窗体

3.图表窗体的创建 4.练习通过设计器创建窗体 5.练习美化窗体 第十三周:练习创建各种类型的报表 1.自动创建纵栏式报表和表格式报表; 2.向导创建报表(多表报表、图表报表、标签报表) 3.练习通过设计视图创建报表(主|子报表、自定义报表) 4.练习在报表中添加计算字段和分组汇总数据 第十五周:综合应用 1.了解Access数据库系统开发的一般方法; 2.课程内容的综合练习; 3.编写上机实验报告、答疑 (二)上机完成情况 第七周:熟悉Access界面,数据库和表的创建,维护与操作 完成了创建表,向表中输入不同类型的数据,创建和编辑表之间的关系,进行了表的维护,修改了表的结构、内容、外观,最后进行了表的操作,查找、替换、排序、筛选等。 已完成 第八周:练习创建各种查询 练习选择查询、参数查询、交叉表查询,然后练习并操作查询,生成查询、删除查询、更新查询、追加查询等。 已完成 第十周:练习创建各种类型的窗体 自动创建纵栏式窗体和表格式窗体,向导创建主|子窗体和图表窗体,练习通过设计器创建窗体,美化窗体。 基本完成 第十三周:练习创建各种类型的报表 自动创建纵栏式报表和表格式报表,向导创建报表,练习通过设计视图创建报表,在报表中添加计算字段和分组汇总数据。 已完成 第十五周:综合应用

数据库实训报告

数据库 实训报告 专业:计算机科学与技术班级:计091 姓名:xxx 任课教师:xxx 2012年11月5日

目录 第一章概述 (3) 1.1引言 (3) 1.2摘要 (3) 第二章需求分析 (3) 2.1功能分析 (3) 2.2性能分析 (4) 2.3可靠性和可用性需求 (4) 2.4出错处理要求 (4) 2.5约束 (4) 2.6逆向需求 (4) 2.7将来可能提出的要求 (4) 第三章数据库设计 (4) 3.1数据字典 (4) 3.2E-R图 (5) 3.3数据库设计 (6) 第四章详细设计 (7) 4.1登录主界面开发 (7) 4.2登录后学生信息界面的开发 (8) 4.3登录后教师信息界面的开发 (8) 4.4登录后学生选课界面的开发 (9) 4.5登录后教师发布选课界面的开发 (9) 总结 (10) 参考文献 (10)

第一章概述 引言 由于信息科技化的越来越多的被应用在商业、工业等领域。管理信息系统的实施在技术上已逐步成熟。任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。那么作为高等教育组织的学校也不例外。 所以在顺应形势的前提下我们做了此实训,本文介绍了以Oracle11g和JAV A为开发环境而实现的学生教务管理系统的完全运行。自下而上地应用开发”的策略开发一个学校教务管理信息系统的过程。 摘要 学生选课管理系统是一个非常通用的信息管理系统,本课题主要设计一个简单的选课管理系统,进行简单的课程查询及管理。主要实现的功能有:学生基本信息的导入/导出;学生课程信息的录入、修改、添加、删除、查询;在课程设计中,系统开发平台为Windows7,程序设计语言采用Java,数据库采用MYSQL,程序运行平台为Windows7。系统的实现可以极大地方便教师和学生对课程的使用,查询和管理。之所以选择Java作为开发工具,不仅仅因为它好用,更是它的功能强大和使用方便。系统设计部分主要介绍了系统功能设计和数据库设计及JAVA代码设计;系统实现部分说明了几个主要模块的算法,本系统界面友好,操作简单,比较实用。 第一章需求分析 2.1功能需求 “学生选课系统”服务于两种客户,一种是:教师,主要实现的功能包括自己信息管理,公布课程信息,选择学生。另一是:学生,主要实现功能包括管理自己信息,选择课程,查看各种信息。

#(16课时)数据库实验指导书

《数据库原理及使用》实验指导书 (适用于计算机科学和技术、软件工程专业) 热风器4 计算机科学和技术学院 2011年12月 ⒈本课程的教学目的和要求 数据库系统产生于20世纪60年代末。30多年来,数据库技术得到迅速发展,已形成较为完整的理论体系和一大批实用系统,现已成为计算机软件领域的一个重要分支。数据库原理是计算科学和技术专业重要的专业课程。 本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库使用的基本训练,提高其解决实际问题的能力。 ⒉实验教学的主要内容 数据库、基本表、视图、索引的建立和数据的更新;关系数据库的查询,包括单表查询、连接查询、嵌套查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库使用系统的设计实现。 ⒊实验教学重点 本课程的实验教学重点包括: ⑴数据库、基本表、视图、索引的建立和数据的更新; ⑵SQL的数据查询; ⑶恢复、完整性和安全性实现机制; ⑷简单数据库使用系统的设计实现; 4教材的选用 萨师煊,王珊.数据库系统概论(第四版).北京:高等教育出版社.2006,5 实验1创建数据库(2学时) 实验目的 1.学会数据表的创建; 2.加深对表间关系的理解; 3.理解数据库中数据的简单查询方法和使用。 实验内容 一、给定一个实际问题,实际使用问题的模式设计中至少要包括3个基本表。使用问题是供应商给工程供应零件(课本P74)。 1.按照下面的要求建立数据库: 创建一个数据库,数据库名称可以自己命名,其包含一个主数据文件和一个事务日志文件。注意主数据文件和事务日志文件的逻辑名和操作系统文件名,初始容量大小为5MB,

数据库管理系统的设计与实现

数据库管理系统的设计与实现 1.DBMS的目标 (1)用户界面友好对一个实用DBMS来说,用户界面的质量直接影响其生命力。DBMS的用户接口应面向应用,采用适合最终用户的交互式、表格式、菜单式、窗口式等界面形式,以方便使用和保持灵活性。一般地说,用户界面应具有可靠性、简单性、灵活性和立即反馈等特性。 (2)功能完备DBMS功能随系统的规模的大小而异。大型DBMS功能齐全,小型DBMS功能弱一些。DBMS主要功能包括数据定义、数据库数据存取、事务控制、数据库组织和存储管理、数据库安全保护等等。我们在下面讨论这些功能的内容。 (3)效率高系统效率包括三个方面:一是计算机系统内部资源的使用效率。能充分利用资源(包括存储空间、设备、CPU等),并注意使各种资源负载均衡以提高整个系统的效率,二是DBMS本身的运行效率。三是用户的生产率。这是指用户学习、使用DBMS和在DBMS基础上开发的应用系统的效率。 2.DBMS的基本功能 (1)数据库定义对数据库的结构进行描述,包括外模式、模式、内模式的定义;数据库完整性的定义;安全保密定义(如用户口令、级别、存取权限);存取路径(如索引)的定义。这些定义存储在数据

字典(亦称为系统目录)中,是DBMS运行的基本依据。为此,提供数据定义语言DDL。 (2)数据存取提供用户对数据的操纵功能,实现对数据库数据的检索、插入、修改和删除。一个好的DBMS应该提供功能强易学易用的数据操纵语言(DML)、方便的操作方式和较高的数据存取效率。DML有两类:一类是宿主型语言,一类是自含型语言。前者的语句不能独立使用而必须嵌入某种主语言,如C语言、COBOL语言中使用。而后者可以独立使用,通常以供终端用户交互使用和批处理方式两种形式使用。 (3)数据库运行管理这是指DBMS运行控制、管理功能。包括多用户环境下的并发控制、安全性检查和存取权限控制、完整性检查和执行、数据加密、运行日志的组织管理、事务的管理和自动恢复(保证事务的正确性),这些功能保证了数据库系统的正常运行。 (4)数据组织、存储和管理DBMS要分门别类地组织、存储各类数据,包括数据字典(亦称系统目录)、用户数据、存取路径等等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率,选择合适的存取方法确保较高存取(如随机查找、顺序查找、增、删、改)效率。 (5)数据库的建立和维护包括数据库的初始建立、数据的转换、数据库的转储和恢复、数据库的重组织和重构造以及有性能监测分析等功能。

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:2015/7/9

《数据库原理课程设计》课程设计 任务书 一、目的与要求 1.本实验是为计算机各专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力 而设置的实践环节。通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。 为后继课程和毕业设计打下良好基础。 2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3.通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界 面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作。大致分为如下步骤: 1. 理解系统的数据库需求,分析实体及实体间联系,画出E-R图: 1)分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义。 2)设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1)把E-R图转换为逻辑模式; 2)规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3)设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4)用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1)根据系统分析,完成授权操作; 2)了解学习收回权限的操作。 4.完成用户界面的设计,对重要数据进行加密。

福建工程学院《实验指导书(数据库系统原理及应用)》

数据库系统原理 实验指导书 (本科)

目录 实验一数据定义语言 (1) 实验二SQL Sever中的单表查询 (3) 实验三SQL Serve中的连接查询 (4) 实验四SQL Serve的数据更新、视图 (5) 实验五数据控制(完整性与安全性) (7) 实验六语法元素与流程控制 (9) 实验七存储过程与用户自定义函数 (11) 实验八触发器 (12)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\S tuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10% 2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录; (4)将年龄的数据类型改为smallint; (5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime); (6)对表S,按年龄降序建索引(索引名为inxage); (7)删除S表的inxage索引; (8)删除S表; 5.在StuDB数据库中, (1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。 并输入相关数据。 (2)将StuDB数据库分离,在D盘下创建DB文件夹下找到StuDB数据库的两个文件,进行备份,后面的实验要用到这个数据库。 6.(课外)按照《数据库系统概论》(第四版)P74页习题5的SPJ数据库。创建SPJ数据 库,并在其中创建S、P、J和SPJ四张表。每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。要作好备份以便后面的实验使用该数据库数据。 三、实验要求:

数据库实训报告

实训报告 实训课程:JA V A WEB项目实训 实训名称:JA V A项目实训综合能力培养 实训地点:中国江苏无锡国家软件园巨蟹座C601 学生姓名:胥康 学号:140703133 指导教师:张志华 实训时间:2016年7月22日 实训数据库MySQL与JA V A 编程 一、实训目的 熟悉扫描器结构及工作原理,监测输入实训结果分析,通过该实训,从设计到性能测试完成完整的实训流程,锻炼同学编程能力、测试能力、设计能力、全局把控能力、学习能力、动手能力和分析问题能力等。 二、实训内容 1、设计好数据库结构,录入测试数据五条以上。 2、通过标准Statement语句对象,完成增删改查四个类编程。 三、实训器材 教学投影机一台、个人笔记本电脑一台、本地服务器一台(教师机) 四、实训步骤与结果 /** *功能:完成数据查询 */ package com.ec; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement;

/** * @author xukang * */ public class SelectData { /** * @paramargs * */ public static void main(String[] args) throws Exception{ Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/ECDB1?useSSL=false"; String user="root"; String password="12345678"; Connection conn=DriverManager.getConnection(url,user,password); Statement st=conn.createStatement(); String sql="select * from ware"; ResultSet r=st.executeQuery(sql); while (r.next()) { System.out.println(r.getInt(1)+"\t"+r.getString(2)+"\t"+r.getFloat(3)+"\t"+r. getString(4)+"\t"+r.getString(5)+"\t"+r.getString(6)); } r.close(); st.close(); conn.close(); // TODO Auto-generated method stub } }

数据库实训指导书(1)讲解

人事管理系统功能规范(SQL部分)

1 概述 1.1目的 本文为教学案例项目SQL Server功能规范说明书。本说明书将: ●描述数据库设计的目的 ●说明数据库设计中的主要组成部分 ●说明数据库设计中涵盖的教学知识要点 1.2内容 本文档主要内容包括对数据库设计结构的总体描述,对数据库中各种对象的描述(包括对象的名称、对象的属性、对象和其他对象直接的关系)。本文档中包含对以下数据库内容的描述: ●数据表 ●视图 ●存储过程 ●用户自定义函数 ●触发器 ●约束 1.3与其他项目的关联 教学案例项目的数据库设计与教学项目(Web部分和Windows部分)功能密切相关。 教学案例项目的数据库将按照教学项目程序部分的功能需求而设计,数据库设计将配合教学案例的程序部分,以实现一个功能完备的企业环境内的应用。 2 表 2.1表设计概述 根据教学案例功能,数据库将以员工信息为中心存储相关数据,配合SQL Server 数据库系统中提供的数据管理,实现员工考勤、请假、加班管理及系统设置等业务功能。 数据库设计将以存储员工信息的员工表为基础,连接多张相关表以实现对以下关系的支持: ●员工与请假申请 ●员工与加班申请 ●员工与考勤记录 ●员工与部门

●员工与部门经理 ●员工与业绩评定记录 ●员工与薪资 此外数据库中还将记录教学案例应用中需要的全局配置信息和事件日志记录。数据库系统主要的实体关系如图2-1所示。

2.2员工表 概述 员工表用于记录员工基本信息,并作为基础表与其他表连接。该表通过DeptID和Title可以确定员工部门和职位信息。当Title的值为“经理”时可以确定此员工为该部门的部门经理。 表定义 员工表定义如表2-1所示。 表2-1 主键 员工表的主键是员工编号字段,类型为整型,设置自动增量。

数据库系统设计说明书

数据库课程设计——学生信息管理系统 学院:机电工程学院 班级:09工业工程 组员:郎建鹏 学号:0911******* 指导老师:李峰平

目录 第一章系统分析 (2) 1 建立新系统的必要性 (2) 2 业务流程分析(业务流程图) (2) 3 数据流程图 (3) 4 数据字典 (4) 第二章系统设计 (4) 1 数据库设计(E-R) (4) 2系统运行环境 (6) 3输入输出设计 (10) 第三章设计总结 (10) 参考文献……………………………………………………………… 图例说明………………………………………………………………

第一章系统分析 1 建立新系统的必要性 这次的课程设计是在学习完《数据库原理》和《delphi程序设计》基础上进行的一次系统性的训练,既是对所学知识的巩固,也是对自己综合运用所学知识解决实际问题的一次锻炼。学生信息管理系统的主要目的是为了方便学校对学生的信息进行录入、修改、查询,提高学校的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。 学生信息管理可以帮助学校最迅速最准确的完成所需的工作。无论是在适用性、灵活性和易操作性方面都显示出了它的强大功能。 2 业务流程分析(业务流程图)

数据流图是结构化分析中不可缺少的有力工具,它描述了系统的分解,即系统由哪些部分组成,各部分之间有什么联系等。但是,它还不能完整地表达一个系统的全部逻辑特征,特别是有关数据的详细内容。因此,仅仅一套数据流图并不能构成系统说明书,只有对图中出现的每一个成分都给出详细定义以之后,才能全面地描述一个系统。对数据流、数据存储和数据处理的详细描述,需要用数据字典(DD)。它包括数据流、数据存储、外部项和处理过程的详细条目。数据字典中把数据的最小单位定义为数据项,而若干数据项可以组成一个数据结构。数据字典是通过以数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。 第二章系统设计 1 数据库设计(E-R) (1)管理员实体的E-R图 (2)普通用户实体的E-R图

数据库实训报告

数据库实训报告 目的:熟练掌握与应用数据库操作应用技术。 时间:2012.2.20 ~ ~2012.2.26 地点:学校机房 实训人:网络1001班 32号马长旺 指导老师:孔庆月王彦新 实训任务:运用Microsoft SQL Server 2005和Microsoft Visual Studio 2008软件制作一个学生成绩管理系统。 一:实训的内容:1.项目目标:具体规划模块如下, 1)课程信息管理:包括对课程信息管理、浏览等功能。 2)学生信息管理:包括学生信息的浏览、管理、查询等功能。 3)成绩管理:包括对学生所学课程浏览、管理、查询功能。功能结构图如下: 成绩信息的查询 成绩信息的增减删 学生信息的查询 学生信息的增减删 课程信息的增减删 学生成绩管理系统 课程信息管理 学生信息管理 学生成绩管理 2.数据库结构设计与实现 学生成绩管理系统数据库的名称设置为“JDXS”,其中包括3个数据表:课程信息表、学生信息表、成绩表。 a. 课程信息表:用于保存所有的课程信息; b. 学生信息表:包括用于保存说有学生的基本信息; c. 成绩表:用于保存学生所学课程及成绩;

3.创建项目 启动程序“Microsoft Visual Studio 2008”,选择“文件”-----“新建”----“项目”命令,打开“新建项目”对话框,输入项目名称“StudentInfoSystem”,文件位置设置为“E:/学生成绩管理系统”文件夹。单击“确定”按钮后,出现创建项目的开发环境 4.设计与实现主窗体 将刚才创建的窗体Form1作为主窗体:右击主窗体,设置主窗体的属性。添加各个控件。 5.设计与实现课程设置窗体 选中项目中的解决方案名称(StudentInfoSystem)右击,选中“添加”---“新建项”---“Windows窗体”,在“新添加项”对话框中,输入窗体名 称“FrmCourseManage”,单击“添加”按钮。然后,对改窗体进行界面设计和代码设计。 6.设计与实现学生信息管理窗体

数据库系统课程设计--实例

摘要 数据库技术是计算机科学技术发展最快,应用最为广泛的技术之一。其在计算机设计,人工智能,电子商务,企业管理,科学计算等诸多领域均得到了广泛的应用,已经成为计算机信息系统和应用的核心技术和重要基础。 随着信息技术的飞速发展,信息化的大环境给各成人高校提出了实现校际互联,国际互联,实现静态资源共享,动态信息发布的要求; 信息化对学生个人提出了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进行重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径. 校园网信息系统建设的重要性越来越为成人高校所重视. 利用计算机支持教学高效率,完成教学管理的日常事务,是适应现代教学制度要求、推动教学管理走向科学化、规范化的必要条件;而教学管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行教学管理工作,不仅能够保证各项准确无误、快速输出,而且还可以利用计算机对有关教学的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高员工工资管理的效率,也是教学的科学化、正规化管理,与世界接轨的件。在软件开发的过程中,随着面向对象程序设计和数据库系统的成熟,数据设计成为软件开发的核心,程序的设计要服从数据,因此教学管理系统的数据库设计尤其重要。 本文主要介绍教学管理系统的数据库方面的设计,从需求分析到数据库的运行与维护都进行详细的叙述。本系统利用IBM DB2企业版本开发出来的。DB2是IBM公司开发的关系关系数据库管理系统,它把SQL语言作为查询语言。 本文的分为5章。其中第1章主要是课题简介及设计的内容与目的。第2章是需求分析,此阶段是数据库设计的起点。第3章是概念设计,它是将需求分析的用户需求抽象为信息结构,这是整个数据库设计最困难的阶段。第4章是逻辑结构设计,它将概念模型转换为某个DBMS所支持的数据模型。第5章是数据库的实施与运行,它包括数据的载入及数据库的运行。 关键词:SQL语言;IBM DB2;数据库设计;教学管理系统 I

数据库系统的设计步骤

数据库系统的设计步骤 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。下面小编整理了数据库系统的设计步骤,供大家参考! 进行数据库设计首先必须准确了解和分析用户需求。需求分析是整个设计过程的基础,也是最困难,最耗时的一步。需求分析是否做得充分和准确,决定了在其上构建数据库大厦的速度与质量。需求分析做的不好,会导致整个数据库设计返工重做。 需求分析的任务,是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上确定新的系统功能,新系统还得充分考虑今后可能的扩充与改变,不仅仅能够按当前应用需求来设计。 调查的重点是,数据与处理。达到信息要求,处理要求,安全性和完整性要求。 分析方法常用SA(Structured Analysis) 结构化分析方法,SA方法从最上层的系统组织结构入手,采用自顶向下,逐层分解的方式分析系统。 数据流图表达了数据和处理过程的关系,在SA方法中,处理过程的处理逻辑常常借助判定表或判定树来描述。在处理功能逐步分解的同事,系统中的数据也逐级分解,形成若

干层次的数据流图。系统中的数据则借助数据字典来描述。数据字典是系统中各类数据描述的集合,数据字典通常包括数据项,数据结构,数据流,数据存储,和处理过程5个阶段。 概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合,归纳与抽象,形成了一个独立于具体DBMS 的概念模型。 设计概念结构通常有四类方法: 自顶向下。即首先定义全局概念结构的框架,再逐步细化。 自底向上。即首先定义各局部应用的概念结构,然后再将他们集成起来,得到全局概念结构。 逐步扩张。首先定义最重要的核心概念结构,然后向外扩张,以滚雪球的方式逐步生成其他的概念结构,直至总体概念结构。 混合策略。即自顶向下和自底向上相结合。 逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并将进行优化。 在这阶段,E-R图显得异常重要。大家要学会各个实体定义的属性来画出总体的E-R图。 各分E-R图之间的冲突主要有三类:属性冲突,命名冲突,和结构冲突。

GIS空间数据库设计方法讨论

第31卷总第77期 西北民族大学学报(自然科学版)Vol.31,No.1 2010年3月 Journal of N orthw est U niversity for N ationalities(Natural Science)Sep,2010 GIS空间数据库设计方法讨论 薛国梁 (西北民族大学人事处,甘肃兰州730030) [摘 要]通过分析地理信息系统建设过程中空间数据库的建设内容1综述空间数据块的划分、图层的分层设计方法、专题图层划分和数据集设计、分析空间数据库的结构,讨论了空间数据库系统建设的方法和需解决的关键技术问题1 [关键词]GIS;空间数据库;专题图层;元数据 [中图分类号]TP311.131 [文献标识码]A [文章编号]1009-2102(2010)01-0049-04 0 引言 地理信息系统是集计算机科学、空间科学、信息科学、测绘遥感科学、环境科学等学科于一体的新兴边缘科学1GIS从20世纪60年代出现以来,至今只有短短的40多年时间,但已成为已成为多学科集成并应用于各领域的基础平台,成为地学空间信息分析的基本手段和工具1目前,地理信息系统不仅发展成为一门较为成熟的技术科学,而且已成为一门新兴产业,在测绘、地质、水利、环境检测、土地管理、城市规划、国防建设等领域发挥越来越重要的作用1 1 空间数据库内容 每个GIS数据集都提供了对世界某一方面的空间表达,包括: 基于矢量的要素(点、线和多边形)的有序集合; 诸如数字高程模型和影像的栅格数据集; 网络; 地形和其他地表; 测量数据集; 其他类型数据,诸如地址、地名和制图信息; 描述性的属性1 除了地理表现形式以外,地理数据集还包括传统的描述地理对象的属性表1许多表和空间对象之间可以通过它们所共有的字段(也常称为“关键字”)相互关联1就像它们在传统数据库应用中一样,这些以表的形式存在的信息集和信息关系在GIS数据模型中扮演着非常关键的角色1 2 空间数据表现形式 211 空间关系:拓扑和网络 空间关系,比如拓扑和网络,也是一个GIS数据库的重要部分1使用拓扑是为了管理要素间的共同边界、定义和维护数据的一致性法则,以及支持拓扑查询和漫游(如确定要素的邻接性和连接性)1 [收稿日期]2009-12-10 [作者简介]薛国梁(1980—),男,陕西韩城市人,党政管理研究实习员,主要从事高教管理工作1

数据库原理实验报告四(有答案)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验四查询设计实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)了解查询的目的,掌握SELECT语句的基本语法和查询条件的表示方法。 (2)掌握数据排序和数据联接查询的方法。 (3)掌握SQL Server查询分析器的使用方法。 2.实验要求 (1)针对“TM”数据库,在SQL Server查询分析器中,用T-SQL语句实现以下单表查询 操作,并将将调试成功的T-SQL命令,填入实验报告中。 a)查询所有课程的详细情况。 b)查询来自江苏或山东的学生学号和姓名,并以中文名称显示输出的列名。 c)查询选修了课程的学生学号(一人选了多门课程的话,学号只显示一次)。 d)查询选修课程号为07253001的学号和成绩,并要求对查询结果按成绩降 序排列,如果成绩相同则按学号升序排列。 e)查询所有学生的学号、姓名和年龄。 f)查询选修课程号为07253001的成绩在85-95之间的学生学号和成绩,并 将成绩乘以0.7输出。 g)查询数学与信息技术学院(DEPT_ID为07)或物理与电子工程学院 (DEPT_ID为09)姓张的学生的信息。。 h)查询所有核心课程(课程名中带*的)的情况。 i)查询缺少了成绩的学生的学号和课程号,查询结果按课程号升序排列。 (2)在SQL Server查询分析器中,用T-SQL语句实现下列数据联接查询操作: a)查询每个学生的情况以及他(她)所选修的课程。 b)查询学生的学号、姓名、选修的课程名及成绩。 c)查询选修C语言程序设计且成绩为85分以上的学生学号、姓名及成绩。 d)查询和学生柏文楠是同一个民族的学生(用自身联接实现)。 e)分别用等值联接和内联接查询有授课记录的老师的姓名。 f)用外联接查询所有老师的授课情况,输出老师的工号、姓名、职称、院 系、担任的课程号和授课的学期,结果按院系和职称升序排列。如果该 老师没有授课历史,在课程号和授课的学期中显示空值 (3)在SQL Server Management Studio中新建查询,完成以上查询命令的同时,熟悉SQL编 辑器工具栏中各快捷按钮的作用。 (4)按要求完成实验报告。

数据库实训指导书

《数据库》实训计划 课程名称:数据库原理及应用 一、课程简介 《数据库原理及应用》课程是我院计算机科学与技术专业的一门重要专业课程,是一门理论性和实践性都很强的面向实际应用的课程,它是计算机科学技术中发展最快的领域之一。可以说数据库技术渗透到了工农业生产、商业、行政管理、科学研究、教育、工程技术和国防军事等各行各业。因此本课程的教学既要向学生传授一定的数据库理论基础知识,又要培养学生运用数据库理论知识和数据库技术解决实际应用问题的能力。 二.课程实验 实验题目 1.学籍管理系统 2.图书档案管理系统 3.企业人事管理系统 4.工资管理系统 5.用户和权限管理系统。 6.仓库管理系统。 7.企业进销存管理系统。 8、超市管理系统 10、酒店管理系统 11、旅游管理系统 12、高考成绩信息管理系统

13、医院信息管理系统 14、银行计算机储蓄系统 15、 ICU监护系统 16、可自拟题目 任选一题按照下列实验纲要进行设计。 实验纲要 1、实验目标 本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库应用的基本训练,提高其解决实际问题的能力。 2、实验内容 数据库的模式设计;数据库、表、视图、索引的建立与数据的更新;关系数据库的查询,包括嵌套查询、连接查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库应用系统的设计实现。 给定一实际问题,让学生自己完成数据库模式的设计,包括各表的结构(属性名、类型、约束等)及表之间的关系,在选定的DBMS上建立数据库表。用SQL命令和可视化环境分别建立数据库表,体会两种方式的特点。 3、实验教学重点 本课程的实验教学重点包括:⑴数据库的模式设计;⑵SQL的数据查询; ⑶并发控制、恢复、完整性和安全性实现机制;⑷简单数据库应用系统的设计实现; 实验1:数据库的创建

数据库原理实训报告范本

数据库原理实训报 告

数据库原理实训报告 目录 1.实训题目--------------------------------------------------------- 错误!未定义书签。 2.实训目的--------------------------------------------------------- 错误!未定义书签。 (1)知识目标 -------------------------------------------------- 错误!未定义书签。 (2)能力与技能目标 ---------------------------------------- 错误!未定义书签。 (3)素质目标 -------------------------------------------------- 错误!未定义书签。 3.数据库概念设计 ----------------------------------------------- 错误!未定义书签。 4.数据库逻辑设计 ----------------------------------------------- 错误!未定义书签。 5.数据库的建立 -------------------------------------------------- 错误!未定义书签。 6.数据表的设计和关系图 ------------------------------------- 错误!未定义书签。 (1)数据表的设计-------------------------------------------- 错误!未定义书签。 (2)数据完整性约束 ---------------------------------------- 错误!未定义书签。 (3)数据表的建立-------------------------------------------- 错误!未定义书签。 (4)数据表数据的录入 ------------------------------------- 错误!未定义书签。 (5)关系图的建立-------------------------------------------- 错误!未定义书签。 7.简单查询和复杂查询 ---------------------------------------- 错误!未定义书签。 (1).简单查询 ------------------------------------------------- 错误!未定义书签。 (2).复杂查询 ------------------------------------------------- 错误!未定义书签。 8.视图的创立 ----------------------------------------------------- 错误!未定义书签。

数据库实训报告实训

这次实训,总的下来,感觉不易。在数据库这门课程一开始,感觉学的云里雾里,觉得记代码很麻烦,也会担心这门课程期末考过不了。许多同学也有这样的感受,但相信通过这次的实训大家应该有了更多的信心。这次实训还综合应用数据库、SQLServer2005、学生管理等知识。使我们所学知识得到延伸与拓展,也提高了我们的综合实践能力。 在这一周的实训当中,我们做了一个学校综合管理数据库系统,我们实训的内容是从数据库、数据表的创建和修改开始的,表是建立关系数据库的基本结构,用来存储数据具有已定义的属性,在表的操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中的数据及修改表和删除表的操作。从实训中让我更明白一些知识,表是数据最重要的一个数据对象,表的创建好坏直接关系到数数据库的成败。另一个内容是数据库的约束、视图、查询。从中我们了解到查询语句的基本结构,和简单SELECT语句的使用,多表连接查询。而在视图的操作中,也了解到了视图是常见的数据库对象,是提供查看和存取数据的另一种途径,对查询执行的大部分操作,使用视图一样可以完成。虽然只是一个比较和我们有关的数据库,但是在这一周的实训过程中,做的也不是很顺利,其中也遇到了许多问题,通过反反复复的看书,并且向同学请教,把相关的知识复习了一遍,这也是一种很大的收获。至少我们在做的过程中学会了思考,就像在做这个数据库系统的时候,我们在做之前就要有一个方案,设计一个步骤,先开始进行需求分析,接着进行概念模型设计,其次进行逻辑结构设计,最后我们在创建数据库脚步文件。在创建的过程中,是我们问题最多的步骤,通过做题,我们发现了自己的不足,这也与我们平时上课有关,许多学过的知识,转眼就忘,而且也没有在空余时间去复习,并且对于一些重点的知识,我们也掌握的不好,许多的语法知识和基本语句都会出错。对于这种情况,我们就得好好反省自己,在以后的学习当中,我们就要补其不足,掌握更好的学习方法。 其实,不管我们做什么事情,我们都应该想清楚,首先干什么,其次干什么,有了一个合理的规划,我们做起来也就比较的有了方向,有了目标,再向目标去奋斗,这样我们才能更好的把握自己,使自己更好的发展。

ACCESS数据库实训指导书

《ACCESS数据库》实训指导书 一、实训总目的: 利用access数据库技术开发一个学生档案管理系统,要求: 1.掌握数据库、数据表及表间关系的创建与修改方法,理解参照完整性概念。 2.了解查询基本功能,能熟练创建各种类型的查询。 3.了解窗体的作用,能利用各种方法创建、编辑出界面美观的窗体。 4.了解报表的作用,能按需制作格式正确的报表。 5.掌握系统集成技术,能将各分散对象组装成一个的完整系统。 二、实训内容和时间进程安排: 三、实训成绩评定、考核办法 数据表及关系创建占10分,学生档案窗体占10分,课程表窗体占10分,成绩表窗体占10分,查询窗体占15分,系统集成占5分,实训报告占40分。

实训内容 实训一数据表及关系的创建 一、实训目的 熟练掌握数据库的创建方法,熟练掌握数据表结构设计及修改方法。 二、实训理论基础 关系型数据库基本概念、关系完整性规则、主键及范式理论。 三、实训内容与步骤 创建学生档案表、课程名表、学生成绩表,设置主键、建立表间关系,收集到的各数据表的内容如下。 学生档案表 学生选课情况 课程名表

学生成绩表 具体步骤如下: 1、创建数据库: 启动ACCESS,创建以“学生”命名的数据库。 2、创建数据表: 经过对收集到的数据表经过规范化处理,在数据表设计视图中创建如下数据表:学生档案表、课程名表、学生选课成绩表,各表结构如下。 学生档案表 课程名表 学生成绩表 3、创建表间关系,如下图1-1所示。

图1-1 表间关系 四、效果要求: 1、字段属性设置正确。 2、表间关系设置正确,要求实施参照完整性、级联更新、级联删除相关记录。

数据库实训总结报告

经济与管理学院 电子商务专业 姓 名: 孟高源 学 号: 201315021 指导老师: 徐丽娟 刘一鸣 编写日期: 2015 年 1 月 实 训 报 告 电子商务数据库技术

数据库实训学习心得 在网络高速发展的今天。我作为一名在校大学生必须跟上时代发展的步伐。经过了两个礼拜的学习与实践,我对数据库这门课有了更加深入的了解,在实践中我了解到了数据库对我们电子商务专业的重要性。经过实训,从开始的设计,构思,到后来的实际操作,当中获益良多。 在实训中,我安排了自己的实训步骤,实训目标清晰,这使我设计的网上订餐系统能够顺利的进行。虽然在实训中遇到许多问题,我从各方面去倾听,去学习,去归纳出一个更加合理,更加可靠地方案。其实,从中我也可以去感受体验一下做软件,做系统的那种艰难,去培养一下独立思考问题的习惯。对未来我以后的发展会起到意想不到道的作用。 对于我个人为一个小组,这是给我自己的一个挑战,为了培养自己独立解决问题和独立思考问题的能力。但是在实践中,许许多多的问题是自己能力所不及的,所以我与其它小组的不少成员交流学习,与他们探讨解决问题的方案,从中获益不少既培养了自己独立自主、自力更生的精神有体悟到与他人合作中“1+1>2”的效果。 通过实训学习,我在学习数据库理论的同时,也提高了自己的动手能力,将课本上的知识用到实践中,真正做到了学以致用,这也让我也真正的体验了一次做系统的大致流程。对于我这样的初学者阶段来说,实训是对我前边的理论知识的一种检测,也是让我对做系统有了初步的认识。其实作为现代大学生的我就应该多去参加一些这样的

实训,去积累一些经验,对以后自己的发展,会大有所用,对数据库的应用也会更加得心应手。其实,不仅仅是数据库,在我所学的专业,许多的课程和技术都是有着联系的,所以在数据库上的实验,也可以在一定程度上理解为对所有技术的综合应用。 在设计过程中,从开始的数据流图、E-R图和功能结构图的设计到数据库的建立,表的导入,数据关系的建立到利用导入的数据建立查询和存储过程,到利用数据源和vb开发系统界面,最后在美化界面和调试。经过这么多道程序之后,我的网上订餐系统也可以说已经成功做好了。在这其中,我学到的数据库技术的的学以致用,对以后的发展来说,是受益匪浅的。对个人独立自主也是有了进一步的认识,在处理实际当中的很多问题不是说着这么简单的,这就需要我更加在今后认真学习,把每个环节的知识都掌握牢固,最后把知识串联起来应用的实际当中来,才是最有价值的! 商务13-1班孟高源 2015.1.22

相关主题
文本预览
相关文档 最新文档