码迷,mamicode.com
首页 > 其他好文 > 详细

# 更新数据表以及创建事务

时间:2019-09-17 00:02:22      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:隔离   提前   恢复   gre   默认   ice   需要   选择   事务   

更新数据表以及创建事务

更新数据表

更新数据表使用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 回退

# 更新数据表以及创建事务

标签:隔离   提前   恢复   gre   默认   ice   需要   选择   事务   

原文地址:https://www.cnblogs.com/freesfu/p/11530851.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!