您的位置:首页 > 数据库

山东大学数据库实验五答案

2015-04-28 15:12 99 查看
这个实验比着实验指导书上一步步做就可以得到结果啦,不过需要注意一下,如果实验过程中关掉客户端再重新打开的话可能会出现错误哦,具体原因尚不清楚,可能是因为没保存对数据库所做的更改吧。

参考结果如下:

create table test5_10 (

test varchar(20),

age numeric(3))

insert into test5_10 values('结果1',88)

insert into test5_10 values('结果2',90)

insert into test5_10 values('结果3',90)

insert into test5_10 values('结果4',86)

insert into test5_10 values('结果5',90)

insert into test5_10 values('结果6',90)

insert into test5_10 values('结果7',86)

insert into test5_10 values('结果8',86)

insert into test5_10 values('结果9',76)

insert into test5_10 values('结果10',86)

补充:1.一个数据库事务起始于一个SQL语句,中止于以下4种事件之一:

COMMIT或ROLLBACK语句

DDL/DCL隐式提交

用户退出时自动提交

系统强行关闭时取消事务

2.COMMIT 结束当前事务,并将所有数据变更

3. ROLLBACK指令结束当前事务,并取消所有数据变更提交数据库生效

4.数据在COMMIT/ROLLBACK前的状态:

事务中所有数据变更都会被临时存放在数据库的缓冲池中,直到事务被提交或者回退。因而事务中早先的状态是可以被恢复的。

用户可以通过SELECT语句查询自己发起事务的数据变更,即使事务未被提交。但不能看到他人发起事务中未被提交的数据。

用户发起事务中的变更数据将被数据库系统锁定。除该用户外,其他用户不能对锁定的数据进行变更操作,直到锁定的数据被提交或回退。

数据在COMMIT后的状态:

数据变更在数据库中正式生效

数据不可被还原

所有用户可以看到变更数据

数据锁将被释放,一度被锁定的数据重新可以被所有用户修改

所有的保存点(savepoint)都被清除

数据在ROLLBACK后的状态:

所有数据变更都取消,数据状态恢复到事务开始前

数据锁将被释放,一度被锁定的数据重新可以被所有用户修改

回退到一个保存点.-----------------------------------------------------------------------------------摘自linux公社(http://www.linuxidc.com/Linux/2012-07/66711.htm)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: