DDL Versus DML Transaction Behavior

By default, Data Definition Language (DDL) statements are executed in their own transaction and therefore committed immediately and not subject to rollback. DDL statements are those in the SQL language that create and/or modify database objects. This includes statements such as CREATE TABLE, CREATE INDEX, ALTER TABLE, and so on. Data Manipulation Language (DML) statements are subject to transaction rules. DML statements are those that operate on the data itself by inserting new data, updating data and deleting data.

Caution: If DDL statements are to be executed concurrently with DML statements, ensure that a LOCK TABLE command is successfully executed prior to executing the DDL statement.