zoukankan      html  css  js  c++  java
  • SQL 事务篇和约束

    数据库事务:

    数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行

    事务是恢复和并发控制的基本单位。
    事务应该具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为ACID特性。
    原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
    一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
    隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
    持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

    事务(Transaction),也就是要么成功,要么失败,并恢复原状。

    约束:

    SQL 约束

    NOT NULL : 用于控制字段的内容一定不能为空(NULL)。   

    UNIQUE : 控件字段内容不能重复,一个表允许有多个 Unique 约束。

    PRIMARY KEY: 也是用于控件字段内容不能重复,但它在一个表只允许出现一个。UNIQUE 约束允许 NULL 值,这一点与 PRIMARY KEY 约束不同。不过,当与参与 UNIQUE 约束的任何值一起使用时,每列只允许一个空值。

    主键列不能包含 NULL 值。

    每个表都应该有一个主键,并且每个表只能有一个主键。

    FOREIGN KEY: FOREIGN KEY 约束用于预防破坏表之间连接的动作,FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。

    一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。

    FOREIGN KEY 约束用于预防破坏表之间连接的动作。

    FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。

    CHECK: 用于控制字段的值范围。

    DEFAULT: 用于设置新记录的默认值。

  • 相关阅读:
    Sbt 配置国内镜像
    spark sql 之 RDD与DataFrame互相转化
    Base64编码和解码工具
    BDB数据库操作工具化
    String、StringBuffer、StringBuilder三者的区别
    常见的数组排序方法
    drop,delete,truncate 三者的异同点
    redis 常用命令
    git shell应用
    机器学习入门之路
  • 原文地址:https://www.cnblogs.com/hanxingli/p/5529138.html
Copyright © 2011-2022 走看看