标准数据库事务完整性约束
为什么80%的码农都做不了架构师?>>>
1、commit work:提交当前事务,也就是将事务所做的更新在数据库中持久保存,在事务被提交后,一个新的事务自动开始。
2、rollback work:回滚当前事务,即撤销该事务中所有SQL语句对数据的更新。这样,数据库就恢复到执行该事务第一条语句之前的状态。
3、一个完整性约束可以是属于数据库的任意谓词。但检测代价太高,大多数数据库允许指定那些只需要极小开销就可以检测的完整性约束。
4、完整性约束通常被看成是数据库模式设计过程的一部分,她作为用于创建关系的create table命令的一部分被声明。
5、单个关系上的约束,not null,unique,check < 谓词>。
6、check(p)子句指定一个谓词P,关系中的每个元组都必须满足谓词P。通常用check子句保证属性值满足指定的条件,实际上创建了一个强大的类型系统。
7、我们通常希望保证在一个关系中给定的属性集上的取值也在另一个关系的特定属性集的取值中出现。这种情况称为参照完整性。
8、外码声明了相关联的on delete cascade删除参照了被删除系的元组。on update cascade更新被参照字段,将参照的元组也一并更新。QL允许指明foreign key子句指明出cascade以外的其他动作,如果约束被违反,可将参照系域设置为null,或者置为域的默认值。如果存在设计多个关系的外码依赖链,则在链的一段所做的删除或更新可能传至整个链。
9、在某一步之后完整性约束也许会暂时被违反,但是后面的某一步也许就会消除这个违反。SQL允许将initially deferred子句加入到约束声明中去,这样完整性约束不是在事务的中间步骤上检查,而是在事务结束的时候检查。一个约束可以被指定为可延迟的约束。set constraints constraint-list deferred语句作为事务的一部分,会导致对指定约束的检查延迟到该事务结束时执行。
10、一个断言就是一个谓词,它表达了我们希望数据库总能满足的一个条件。断言,create assertion <name> check <expression>。
转载于:https://my.oschina.net/loveyj/blog/204460
标准数据库事务完整性约束相关推荐
- 「DB」数据库事务的隔离级别
2019独角兽企业重金招聘Python工程师标准>>> 数据库事务的隔离级别 讲事务的隔离级别之前,先来介绍一下数据库事务的几个特性: (1)原子性 最基本的特性,意思是在一个事务内 ...
- 数据库事务的概念及其实现原理
目录 1. 认识事务 1.1 为什么需要数据库事务 1.2 什么是数据库事务 1.3 事务如何解决问题 1.4 事务的ACID特性以及实现原理概述 2.并发异常与并发控制技术 2.1 常见的并发异常 ...
- 事务复制提示初始快照不可用_「MySQL」数据库事务深入分析
推荐阅读:吊打面试官!MySQL灵魂100问,你能答出多少? 一.前言 只有InnoDB引擎支持事务,下边的内容均以InnoDB引擎为默认条件 二.常见的并发问题 1.脏读 一个事务读取了另一个事务未 ...
- 事务例子_图文详解:数据库事务与锁
什么是事务(Transaction)? 是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行.事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源 ...
- 一文读懂什么是数据库事务
1.什么是事务 首先说一下什么是事务. 事务(Transaction)指一个操作,由多个步骤组成,要么全部成功,要么全部失败. 比如我们常用的转账功能,假设A账户向B账号转账,那么涉及两个操作: (1 ...
- 数据库事务和范式理解
前言 学习自用..网上大把资料,主要为了贴上自己理解.老实说标题和内容真难对的上..以后再修改下..2020年7月23日已改 事务的ACID 事务的atomicity, 每项事务 的全部操作,要么做了 ...
- 9.1 数据库事务概述
9.1 数据库事务概述http://www.cnblogs.com/duanxz/p/3788190.html 事务首先是一系列操作组成的工作单元,该工作单元内的操作是不可分割的,即要么所有操作都做 ...
- mysql dba系统学习-数据库事务详解
mysql dba系统学习-数据库事务详解 上个星期去面试数据库管理员的工作,笔试通过之后就是直接的面试,他问了我一个问题,叫我介绍哈数据库的事务的看法和理解,但是不知所错的没有章法的乱答一气,唉唉, ...
- 列举MySQL事务的隔离级别_mysql dba系统学习(22)数据库事务详解
上个星期去面试数据库管理员的工作,笔试通过之后就是直接的面试,他问了我一个问题,叫我介绍哈数据库的事务的看法和理解,但是不知所错的没有章法的乱答一气,唉唉,基础不扎实啊. 下面来好好的学习哈mysql ...
最新文章
- 绿色版NVM安装与配置详细说明
- hdu_1007_Quoit Design(最近点对)
- 如何构建高并发高可用的剧场直播云端混流服务?
- 3d需要学linux_我的脑子—从核磁共振图像到3D打印
- 计算机编程语言的分类,解释型语言、编译型语言、脚本语言的区别
- 容器编排技术 -- Kubernetes kubectl rollout undo 命令详解
- Kinect 数据录制与回放
- 随机梯度下降SGD算法理解
- 2022-2028全球全站仪市场现状及未来发展趋势
- h2o api java_H2O与Java线程同步
- python学习基础知识——1
- 群晖系统上的 Docker 使用拾遗
- 【戒焦戒躁,can win】Linux--inode
- 你知道哪些出身最奇特的程序员?
- 网卡mac地址的设置
- 这个横行霸道的美食,也是中秋节的一大特色,我用Python爬取京东1546条大闸蟹商品数据带大家看看
- BNET通信区块链项目CEO刘建军受邀参加2018“区块链共识大会”
- 写给自己看的C4D建模笔记
- VBA 收集 Word关键字批量处理
- 关于通达OA精灵的一点心得
热门文章
- python相比于excel的优势_对照Excel使用Python进行数据分析,更快掌握
- android的图片缩放,Android图片缩放总结及比较
- c语言opengles程序,OpenGL ES _ 着色器_程序
- Netty入门(一)环境搭建及使用
- 孤独终老和勉强结婚,你会选什么?
- 面试中这样自我介绍更能抓住面试官的耳朵
- php 字符串划线,php – 在elasticsearch中将整个字符串与短划线匹配
- 作者:龚南宁,数据堂(北京)科技股份有限公司对外合作部副总监
- 【OJ】洛谷暴力枚举题单题解锦集
- 【数字逻辑设计】Logisim构建四位行波进位加法器