云数据库 GAUSSDB-SET TRANSACTION:示例

时间:2024-11-02 18:45:44

示例

--创建并切换至测试数据库。
gaussdb=# CREATE DATABASE mysql_compatible_db DBCOMPATIBILITY 'B';
gaussdb=# \c mysql_compatible_db

--开启一个事务,设置事务的隔离级别为READ COMMITTED,访问模式为READ ONLY。
gaussdb=# START TRANSACTION;
gaussdb=# SET LOCAL TRANSACTION ISOLATION LEVEL READ COMMITTED READ ONLY;
gaussdb=# COMMIT;

--设置当前会话的事务隔离级别、读写模式。
--在sql_compatibility = 'B'场景下,b_format_behavior_compat_options设置为set_session_transaction。
gaussdb=# SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
gaussdb=# SET SESSION TRANSACTION READ ONLY;

--给sql_compatibility = 'B'的数据库设置全局会话的事务隔离级别、读写模式(当前只能在sql_compatibility = 'B'场景下)。
gaussdb=# SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
gaussdb=# SET GLOBAL TRANSACTION READ ONLY;

--切换回初始数据库,并删除测试数据库。请用真实的数据库名替换postgres。
gaussdb=# \c postgres
gaussdb=# DROP DATABASE mysql_compatible_db;
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0710.html