zoukankan      html  css  js  c++  java
  • 【PostgreSQL-9.6.3】如何实现非自动提交

    我们在使用psql工具操作数据库时,事务是自动提交的。也就是说,当我们执行完一条insert或者delete语句后,在不输入commit情况下,这条语句也是提交的。如果不想自动提交,可以使用以下两种方法:

    方法一:运行begin;命令,然后输入dml语句,最后执行commit或者rollback语句。

    test=# begin;
    BEGIN
    test=# insert into students values ('kongming',10,2);
    INSERT 0 1
    test=# select * from students;
       name   | age | class_no
    ----------+-----+----------
     kongming |  10 |        2
    (1 row)
    
    test=# rollback;
    ROLLBACK
    test=# select * from students;
     name | age | class_no
    ------+-----+----------
    (0 rows)


    方法二:使用命令关闭自动提交功能(AUTOCOMMIT必须为大写):set AUTOCOMMIT off

    test=#  set AUTOCOMMIT off
    test=# insert into students values ('kongming',10,2);
    INSERT 0 1
    test=# select * from students;
       name   | age | class_no 
    ----------+-----+----------
     kongming |  10 |        2
    (1 row)
    
    test=# rollback;
    ROLLBACK
    test=# select * from students;
     name | age | class_no 
    ------+-----+----------
    (0 rows)

    The End!

  • 相关阅读:
    问题总结
    Https网络安全架构设计
    分布式ID生成策略
    [转]匿名内部类详解
    JAVA名词解释
    MQ实战
    手写SpringMVC实现
    多线程问答
    BIO、NIO实战
    spring中@Value("${key}")值原样输出${key}分析与解决
  • 原文地址:https://www.cnblogs.com/NextAction/p/7366605.html
Copyright © 2011-2022 走看看