
# 开启事务的方式有哪些？
答：开启事务方式有两种，BEGIN可以用于开始一个事务，START TRANSACTION也用于开始一个事务。
- BEGIN的用法。
  ```
  --建表并插入数据。
  gaussdb=# CREATE TABLE tbl_test1(col1 int, col2 int);
  gaussdb=# INSERT INTO tbl_test1 VALUES (1,1), (2,2), (3,3);
  --以默认方式启动事务。
  gaussdb=# BEGIN;
  INSERT INTO tbl_test1 VALUES (4,4);
  END;
  --删除表。
  gaussdb=# DROP TABLE tbl_test1;
  ```
  

- START TRANSACTION的用法。
  ```
  --创建SCHEMA。
  gaussdb=# CREATE SCHEMA tpcds;
  --创建表tpcds.reason。
  gaussdb=# CREATE TABLE tpcds.reason (c1 int, c2 int);
  --以默认方式启动事务。
  gaussdb=# START TRANSACTION;
  gaussdb=# SELECT * FROM tpcds.reason;
  gaussdb=# END;
  --删除表tpcds.reason。
  gaussdb=# DROP TABLE tpcds.reason;
  --删除SCHEMA。
  gaussdb=# DROP SCHEMA tpcds;
  ```
  
 
