自动检查点
通常情况下,为了让应用程序(包括 SQL 客户端或服务器)能够“看到”当前事务中所做的修改,必须调用检查点 API,例如 mco_trans_checkpoint()。当启用自动检查点功能时,SQL 引擎会在每次进行任何修改时对事务进行检查点操作。
该功能通过如下调用 autocheckpoint() 函数来启用和禁用:
select autocheckpoint(true);
//或
select autocheckpoint(false);
请注意,要使自动检查点发挥作用,必须通过“开始事务”语句显式打开 SQL 事务,之后再进行提交或回滚。例如:
XSQL>create table t(s string);
XSQL>insert into t values('one');
XSQL>select autocheckpoint(true);
#1
------------------------------------------------------------------------------
null
Selected records: 1
XSQL>start transaction;
XSQL>select * from t;
s
------------------------------------------------------------------------------
one
Selected records: 1
XSQL>update t set s = 'two' where s = 'one';
XSQL>select * from t;
s
------------------------------------------------------------------------------
two
Selected records: 1
XSQL>rollback transaction;
XSQL>select * from t;
s
------------------------------------------------------------------------------
one
Selected records: 1