这感觉就像一个愚蠢的问题,但我在Oracle事务管理概念指南中看到以下内容:
A transaction ends when any of the
following occurs:A user issues a COMMIT or ROLLBACK
statement without a SAVEPOINT clause.A user runs a DDL statement such as
CREATE,DROP,RENAME,or ALTER. If the
current transaction contains any DML
statements,Oracle first commits the
transaction,and then runs and commits
the DDL statement as a new,single
statement transaction.A user disconnects from Oracle. The
current transaction is committed.A user process terminates abnormally.
The current transaction is rolled
back.