面试oracle 经常问的一个问题- 事务

这几天面试;(面试的时候,没准备什么东西,因为最近很累,就带了个身体过去的,基本没带脑子去了)
好了,我们技术面的差不多了。

我再问你个问题;

oracle 中的事务?

事务你给我说说;

我去,事务,你想知道事务的什么?

事务的四个特性?

事务是干嘛的?

还是什么?

事务

面试官就很淡淡的说,事务就是简单的一点内容啊,你给我说说事务;

我说哥,你想知道什么事务,事务的那方面;

我真的不知道他想知道什么!
然后,面试官就这么走了

(其实,在路上,慢慢想想才想起来很多东西)

先说事务吧!

什么是事务:

  在数据库中,事务是数据库运行工作的逻辑单元,一个事务是由一个或多个完成一组相关行为的SQL语句组成,通过事务机制确保这一组SQL语句所作的操作要么完全成功执行,完成整个工作单元操作,要么一点也不执行。   
    主要特性:确保数据库的完整性。

事务拥有四个特性:(很多人称为 事务的ACID特性)

  对一组SQL语句操作构成事务,数据库操作系统必须确保这些操作的原子性,一致性,隔离性,持久性.   
1、  原子性(Atomicity)   
    事务的原子性是指事务中包含的所有操作要么全做,要么不做,也就是说所有的活动在数据库中要么全部反映,要么全部不反映,以保证数据库的一致性。   
2、  一致性(Consistency)   
    事务的一致性是指数据库在事务操作前和事务处理后,其中数据必须满足业务的规则约束。   
3、  隔离性(Isolation)   
   隔离性是指数据库允许多个并发的事务同时对其中的数据进行读写或修改的能力,隔离性可以防止多个事务的并发执行时,由于它们的操作命令交叉执行而导致数据的不一致性。   
4、  持久性(durability)   
    事务的持久性是指在事务处理结束后,它对数据的修改应该是永久的。即便是系统在遇到故障的情况下也不会丢失,这是数据的重要性决定的。

时间: 2024-10-23 15:38:33

面试oracle 经常问的一个问题- 事务的相关文章

Java面试中常问的Spring方面问题

Spring Framework 现在几乎已成为 Java Web 开发的标配框架.那么,作为 Java 程序员,你对 Spring 的主要技术点又掌握了多少呢?不妨用本文的问题来检测一下. 1.一般问题 1.1. 不同版本的 Spring Framework 有哪些主要功能? Version FeatureSpring 2.5 发布于 2007 年.这是第一个支持注解的版本.Spring 3.0 发布于 2009 年.它完全利用了 Java5 中的改进,并为 JEE6 提供了支持.Spring

MVCC和间隙锁,面试官的问法

你在项目中用到事务了吗,如果你对表中的数据进行了两次操作, 1 更新表中的数据 成功 2 删除表中的数据 失败 那么请问 你更新能成功吗. 菜鸡本菜的回答:事务的原子性 导致不会成功. 大佬说(非面试官):这个应该是面试官要问你间隙锁.  通过版本号来标记,不存在删除数据的操作,只是版本号无效. 理论: MVCC和间隙锁 多版本并发控制(Multi-VersionConcurrency Control,Mvcc)是mysql的InnoDb存储引擎实现隔离级别的一种具体的方式, 用于实现读已提交和

oracle中如何判断一个字符串是否含有汉字

oracle中如何判断一个字符串是否含有汉字 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ①全角字符的判断,或者是含有汉字的字符串的判断 本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力. 一.2.2 实验环境介绍 11.2.0.3  RHEL6.5 一.2.3 本文简介 看到网友问,怎么查询表中某个字段数据是不是包含了

数据库编程3 Oracle 子查询 insert update delete 事务 回收站 字段操作 企业级项目案例

[本文谢绝转载原文来自http://990487026.blog.51cto.com] <大纲> 数据库编程3 Oracle 子查询 insert update delete 事务 回收站 字段操作 企业级项目案例 实验所用数据表 子查询,解决一步不能求解 查询工资比scott高的员工信息: 子查询知识体系搭建: 解释3,查询部门是sales的员工信息: 方法1:子查询 [方法2]:多表: 优化考虑: 解释4[select],只能放单行子查询 解释4[from] 考题:显示员工姓名,薪水 解释

面试中被问到:Android中activity保存状态数据到底该在哪个方法中进行

今天接到一个电面,途中面试官问到一个问题,如果一个activity在后台的时候,因为内存不足可能被杀死,在这之前如果想保存其中的状态数据,比如说客户填的一些信息之类的,该在哪个方法中进行. 我听到的第一反应就是说:在onPause方法中进行保存状态的操作.但是面试官说:onPause()的持续时间很短,假如要进行一些长时间的操作呢? 然后我就纠结了,因为我知道,如果是因为内存不足而被清理,onDestroy()方法一般是不会被执行的.所以只好实话实说,只知道onDestroy在这种情况下不一定会

[转]oracle中使用set transaction设置事务属性

本文转自:http://yedward.net/?id=24 set transaction语句允许开始一个只读或者只写的事务,建立隔离级别或者是为当前的事务分配一个特定的回滚段.需要注意的是,set transaction必须是事务处理中的第一条语句,注意是事务处理的第一条语句,不是指代码的第一条语句,并且set transaction在一个事务中只能出现一次. set transaction的语法如下: SET TRANSACTION parameter; parameter是用来指定参数的

数组去重是面试中经常问到的问题

数组去重是面试中经常问到的问题 [html] view plain copy var arr=[1,3,4,52,4,5,4,8,7,6]; 第一种方法:使用ES5中的indexOf进行去重: [javascript] view plain copy function arr1(){ var n=[]; for(var i=0;i<arr.length;i++){ if(n.indexOf(arr[i])==-1){ n.push(arr[i]); } } return n; }//先定义一个空

前端面试都喜欢问些什么?45分钟高分虏获offer!

通过面试不是件容易的事,作为候选人,通常需要在 45 分钟的时间内展示自己能做些什么.作为一名面试官,同样难以在这么短的时间内评估候选人是否适合.对于面试来说,并不存在一刀切的方法,面试官问的问题通常会有一个范围,但除此之外,他们可以自行决定要问哪些其他问题. 在过去的几年里,我面试过很多专注于前端开发的 Web 开发者和软件工程师,在这篇文章中,我想分享一些面试技巧,帮助候选人为面试做好准备. 作为曾经的候选人和面试官,我试图在这篇文章中涵盖你可能会在面试中被问到的最重要的前端开发知识. 常见

【深度】扒开V8引擎的源码,我找到了你们想要的前端算法(下次面试官再问算法,用它怼回去!)

算法对于前端工程师来说总有一层神秘色彩,这篇文章通过解读V8源码,带你探索`Array.prototype.sort`函数下的算法实现. 来,先把你用过的和听说过的排序算法都列出来: * 快速排序 * 冒泡排序 * 插入排序 * 归并排序 * 堆排序 * 希尔排序 * 选择排序 * 计数排序 * 桶排序 * 基数排序 * ... 答题环节到了, sort 函数使用的以上哪一种算法? 如果你在网上搜索过关于 sort 源码的文章,可能会告诉你数组长度小于10用插入排序,否则用快速排序. 开始我也是