2014-12-02 57 views
0

我是Oracle的新手,所以我仍然在学习基础知识。有人可以向我解释交易是什么吗?当我查看它时,它似乎总是包含一个更新声明,但这是一个必要的功能吗?它是如何声明的?与匿名块有什么不同?Oracle:什么是事务?

任何帮助解释这将是非常感谢!

+0

交易是你可以提交或回滚的东西:-) – Leo 2014-12-02 13:39:51

+0

好的谢谢!你如何申报?当我在匿名块顶部输入START TRANSACTION NAME ='Add_Program'时,出现以下错误:无法打开文件:“TRANSACTION.sql” – Briscoooe 2014-12-02 13:46:20

+0

这可能对您有所帮助.http://www.way2tutorial.com/plsql /plsql_transaction.php – uhs 2014-12-02 13:53:03

回答

3

事务是包含一个或多个SQL语句的逻辑工作单元。交易是一个原子单位。事务中所有SQL语句的影响可以全部提交(应用于数据库)或全部回滚(从数据库撤消)。

事务从第一个可执行SQL语句开始。事务在提交或回滚时结束,或者显式使用COMMIT或ROLLBACK语句,或者在发布DDL语句时隐式执行。

+0

你如何申报?当我在匿名块的顶部键入START TRANSACTION NAME ='Add Program'时,出现以下错误:无法打开文件:“TRANSACTION.sql” – Briscoooe 2014-12-02 13:36:49

+0

您不必 - 只是做功。当你完成后,你提交。有你的交易。 当心DDL - 执行CREATE/ALTER/DROP/TRUNCATE会给你一个隐式的COMMIT。 如果你想声明一个事务并创建保存点,你可以这样做,参考DOCS--这里是你的链接https://docs.oracle.com/database/121/CNCPT/transact.htm#CNCPT1118 – thatjeffsmith 2014-12-02 14:10:20