MYSQL的运行环境实验记录_数据库的事务创建与运行实验报告.pdf

该实验报告详细介绍了在SQL Server 2008环境下,如何创建和运行不同模式的数据库事务,包括显式、自动提交和隐式事务,并观察事务的隔离级别。实验结果显示,事务模式影响数据的完整性,而隔离级别选择对并发性能至关重要。
摘要由CSDN通过智能技术生成

数据库的事务创建与运行实验报告

北京邮电大学

实验报告

课程名称 数据库系统原理

实验内容 实验七

实验名:数据库的事务创建与运行实验

班级 姓名

指导老师 成绩_________

2012 年 05 月 30 日

实验七 数据库的事务创建与运行实验

实验目的

通过实验,了解sql sever 数据库系统中各类数据库事务的定义机制和基于

锁的并发控制机制,掌握sql sever 数据库系统的事务控制机制。

实验平台及环境

本机为windows 7 操作系统平台, SQL Server 2008 数据库环境。

实验内容

1、定义三种模式的数据库事务

2、察看事务的隔离级别

实验步骤和结果分析

1、定义三种模式的数据库事务

(1)显式事务

显示事务是一种由你自己指定的事务,允许自己决定哪一批工作必须成功完

成, 否则所有部分都不完成。操作包括 begin transaction, rollback

transaction, commit transaction。

例如:建立一个显示业务,删除和插入已调记录同时进行

begin tran

insert into 学生 values ('31430','张明','女','1980-1-2 00:00','计算机

','3146')

delete from 学生 where 学号='31427'

commit tran

执行后再select * from 学生结果如下:

分析:由上表可见,要么删除和插入同时成功 (插入了张明信息同时又删除

了黄金花的信息),要么同时失败。这正是显式事务的特点。

(2)自动提交事务

自动提交事务:SQL Server 的默认模式,无需加begin、rollback、commit

等。

例如:

insert into 学生 values ('31431','李明','女','1980-1-2 00:00','计算机

','3146')

执行后再select * from 学生结果如下:

分析:自动提交事务模式下将每条单独的T-SQL 语句视为一个事务。如果成

功执行,则自动提交 (比如上图,成功执行,李明的信息提交),否则回滚。

(3) 隐式事务

打开隐性事务:set implicit_transactions on

在前一个事务完成时新事务隐式启动,但每个事务仍以 COMMIT 或

ROLLBACK 语句显式完成。

例如:

set implicit_transactions on

insert into 学生 values ('31432','李化','女','1980-1-2 00:00','计算机

','3146')

commit tran

执行后再select * from 学生结果如下:

分析:当以隐性事务模式操作时,SQL Servler 将在提交或回滚事务后自动

启动新事务。无法描述事务的开始,只需要提交或回滚事务。

2、察看事务的隔离级别

DBCC Useroptions

图上isolation level 的Va lue 值 read committed 即已提交读模式,read

committed 级别是SQL Server 的默认事务隔离级别。

实验小结

这次做实验内容不多,不过通过实验还是加强了对sql sever 数据库系统中

各类数据库事务的定义机制和基于事务模式的认识。

1、创建事务时,总是弹出警告告诉我插入异常,命令已终止。经过分析,发现

是以前建立的主键和外键约束在作祟,所以立马删掉主键和外键,就能正常

创建事物和执行。

2、隔离级别越高,越能保证数据的完整性和一致性,但是对并发性能的影响也

越大。对于多数应用程序,可以优先考虑把数据库系统的隔离级别设为Read

Committed,它能够避免脏读取,而且具有较好的并发性能。尽管它会导致不

可重复读、虚读和第二类丢失更新这些并发问题,在可能出现这类问题的个

别场合,可以由应用程序采用悲观锁或乐观锁来控制。

3、常用的四种隔离级别有:READ UNCOMMITED (未提交读)、READ COMMITTED (

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值