zoukankan      html  css  js  c++  java
  • # 更新数据表以及创建事务

    更新数据表以及创建事务

    更新数据表

    更新数据表使用UPDATE关键字,语法如下:

    UPDATE 数据表名 SET 需要实现的更改 WHERE 搜索条件;
    

    搜索条件不是必须的,当拥有WHERE关键字是,称为搜索型更新。

    set后面有两种格式:

    UPDATE Product 
    SET sale_price = 500, purchase_price = 400
    WHERE product_name = 'T恤衫';
    

    或者

    UPDATE Product 
    SET (sale_price, purchase_price) = (500, 400)
    WHERE product_name = 'T恤衫';
    

    推荐使用第一种方式,因为第二种方式并非是所有的DBMS都会支持的。

    同时借助数据更新将数据制成为NULL,可以实现数据的清空。

    当然,即使是更新数据的时候也必须遵守创建数据表时的约束,同时不能够清空主键。

    创建事务

    事务是什么

    事务是需要在同一个处理单元中执行的一系列更新处理的集合。通过使用
    事务,可以对数据库中的数据更新处理的提交和取消进行管理

    事务的特点

    事务的特点有四种:

    1. 原子性(Atommicity)
      一件事务,其中的更新操作要么全部都会执行,要么全么都不会执行,所有的这些操作时一个整体,所以叫原子
    2. 一致性(Consistency)
      遵循数据库中提前设置的约束
    3. 隔离性(Isolation)
      指一个事务中的各个更新操作在事务结束以前,他们之间时相互透明的
    4. 持久性(Durability)
      指的是数据的灾难恢复能力

    事务的开始

    实际上几乎所有的数据库都不需要事务开始指令。大部分情况下,事务在数据库建立连接以后就已经开始,并不需要手动指定事务开始的时机。

    对于不指定事务开始,数据库可以有如下几种方式的事务提交方式:

    1. 自动提交类型
      每一条SQL语句就是一个事务
    2. 手动提交类型
      直到用户执行COMMIT或者ROLLBACK为止才算做一个事务

    通常可以任意选择其中的一种模式。SQL Server,PostgreSQL和MySQL等默认使用1。甲骨文,DB2默认使用2。

    同时对于一条语句一个事务的自动提交,执行DELETE语句以后无法回滚,所以需要谨慎操作。

    创建事务

    不同的数据库有不同的创建事务(开始事务)方式,实际上标准的SQL并没有指定创建事务应该使用什么语句。一般的创建方式有:

    1. BEGIN TRANSACTION (Postgres等)
    2. START TRANSACTION (MySQL等)
    3. 无 (甲骨文等)

    结束事务

    1. COMMIT 提交,提交以后不可回退
    2. ROLLBACk 回退
  • 相关阅读:
    2. Add Two Numbers
    1. Two Sum
    leetcode 213. 打家劫舍 II JAVA
    leetcode 48. 旋转图像 java
    leetcode 45. 跳跃游戏 II JAVA
    leetcode 42. 接雨水 JAVA
    40. 组合总和 II leetcode JAVA
    24. 两两交换链表中的节点 leetcode
    1002. 查找常用字符 leecode
    leetcode 23. 合并K个排序链表 JAVA
  • 原文地址:https://www.cnblogs.com/freesfu/p/11530851.html
Copyright © 2011-2022 走看看