VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 数据库 > sql数据库 >
  • sql语句大全之管理数据库事务

管理数据库事务
控制事务的命令有3个;
……. commit
……. Rollback
……. Savepoint
Commit 的语法是:
Commit [work];
删除表里所有价格低于¥14.00的产品
Delete from products_tmp
Where cost < 14;
8 rows deleted.
使用一个commit语句把修改保存到数据库,完成这个事务。
Commit;
Rollback 的语法如下所示:
Rollback [ work];
选择表PRODUCTS_TMP里的全部记录,这是前一次删除cost <14之后所剩的数据。
Select * from products _tmp;
Prod_id     rpod_desc       cost
11235      witch costume     29.99
90         lighted lanterns     14.5
2345       oak bookshelf       59.99
 
3 rows selected.
接下来更新表,表标识为11235的产品价格修改为39.99
Update products set cost=39.99    where prod= ‘11235’;
现在执行rollback 命令来撤销刚刚所做的修改:
Rollback ;
最后,验证所做的修改并没有提交到数据库:
……..Rollback …….用于撤销还没有被保存到数据库的命令,它只能撤销上一个commit或是rollback命令之后的事务。
……..Savepoint ……..保存点是事务过程中的一逻辑点,我们可以把这个点回退到这个点,而不必回退整个事务。
savepoint 命令的语法如下:
savepoint savepoint_name     这个命令就是在事务语句之间创建一个保存点。
在SQL server 中,使用的是save transaction, 而不是 savepoint,
范例如下:
save transaction savepoint_name
除此之外,SQL Server与其他数据库实现完全相同。
…….rollback to savepoint   回退到保存点的命令。
 
回退到保存点语法如下:
Rollback  to  savepoint_name
Release savepoint 命令……..用于删除创建的保存点
Release savepoin savepoint_name;这是使用语法
Microsoft SQL Server 不支持release savepoint ;在事务完成以后,所有的保存点会被自动删除。这个过程不必使用commit 或者rollback命令
Set transaction命令…….用于初始化数据事务,可以指定特性。
我们可以指定事务是只读的或是可以读写的,如下所示:
Set transaction read write ;
Set transaction read only;

相关教程