确定当前的 AUTOCOMMIT DDL 设置
Determining the current AUTOCOMMIT DDL setting
使用 SET TRANSACTION AUTOCOMMIT DDL ON 和 SET TRANSACTION AUTOCOMMIT DDL OFF,您可以设置会话是否在任何 DDL 语句后自动提交。
有没有办法确定您当前的设置?我希望能够编写临时使用设置的某个值然后恢复原始值的代码,或者弄清楚我是否不小心使用了错误的设置。
是的,有。
如果 AUTOCOMMIT DDL 已设置为 OFF,则 M_SESSION_CONTEXT 包含密钥
DDL_AUTO_COMMIT 值为 FALSE。
select key, value
from m_session_context
where
connection_id = current_connection
and key ='DDL_AUTO_COMMIT';
KEY VALUE
DDL_AUTO_COMMIT FALSE
所以,如果您没有找到这条记录,AUTOCOMMIT DDL 模式是开启的(默认)。
使用 SET TRANSACTION AUTOCOMMIT DDL ON 和 SET TRANSACTION AUTOCOMMIT DDL OFF,您可以设置会话是否在任何 DDL 语句后自动提交。
有没有办法确定您当前的设置?我希望能够编写临时使用设置的某个值然后恢复原始值的代码,或者弄清楚我是否不小心使用了错误的设置。
是的,有。 如果 AUTOCOMMIT DDL 已设置为 OFF,则 M_SESSION_CONTEXT 包含密钥 DDL_AUTO_COMMIT 值为 FALSE。
select key, value
from m_session_context
where
connection_id = current_connection
and key ='DDL_AUTO_COMMIT';
KEY VALUE
DDL_AUTO_COMMIT FALSE
所以,如果您没有找到这条记录,AUTOCOMMIT DDL 模式是开启的(默认)。