1.数据库事务并发会产生那些问题?有哪些隔离级别,分别能够避免什么错误,而无法避免什么错误?

  a.事务并发会导致三种问题:脏读、不可重复读、幻象读

  脏读:读取了未提交的数据

  不可重复读:前后读取同一行数据不一致(两次读取中间有其他事物修改了(update)该行数据的内容)

  幻象读:前后读取的数据行数不一致(两次读取中间有其他事物增加(insert)或删除(delete)了该表的记录)

  b.隔离级别一般分为四种,由低到高分别为:未提交读、提交读、可重复读、可串行读

  未提交读:相当于没有锁的状态(会导致脏读、不可重复读、幻象读)

  提交读:数据必须在事务提交后读取(可避免脏读;会导致不可重复读、幻象读)

  可重复读:允许添加但不允许更新(可避免脏读、不可重复读;会导致幻象读)

  可串行读:隔离级别最高,必要时才会采用(三种错误均可避免)

2.简述索引的作用,并示例创建索引的语法

  a.索引是为了提高数据检索性能而建立的,利用索引可以快速的确定所要检索信息所在记录的物理存储地址,因此,使用索引可以提高表的访问速度;

  b.索引独立于基表存在,在对基表进行插入,更新,删除时,Oracle会自动更新索引,因此索引提高了查询速度,但一定程度影响了了增删改速度;

  c.索引中字段(有序性):用户经常查询的表字段(建立索引时Oracle会自动根据该字段进行排序),该字段所在记录的物理地址

  d.索引信息的碎片化(使用一段时间,由于不定期的增删会导致索引碎片化)会导致读写性能的降低,因此可以定期对索引进行重建

  e.索引分类:标准索引、唯一索引、组合索引、反向索引、位图索引

  索引的创建:create index 索引名 on 表名(字段名)

  查看索引:select * from USER_INDEXES

  删除索引:drop index 索引名

3.范式

第一范式就是无重复的列或列不可分割(不能将所有信息放在一列显示,也不能两列或多列合并显示,并且一条记录只出现一次)
  例如:员工信息表,不能将员工信息都放在一列中显示,也不能将其中的两列或多列在一列中显示;
     员工信息表的每一行只表示一个员工的信息,一个员工的信息在表中只出现一次。
第二范式就是非主属性非部分依赖于主关键字(即一个主键决定了一条记录的唯一性,非主键属性完全依赖主键)
  1.第二范式(2NF)要求数据库表中的每个实例或行必须可以被唯一地区分。
  2.第二范式(2NF)要求实体的属性完全依赖于主关键字
第三范式就是属性不依赖于其它非主属性(外键关联表id,仅通过id确认联系,实体之间相关联必须关联主关键字,而不能关联非主属性)
  例如:存在一个部门信息表,其中每个部门有部门编号(dep_id)、部门名称、部门简介等信息。
     那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。
     如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。

Oracle汇总的更多相关文章

  1. Oracle汇总笔记

    http://gzf_PC:1158/em数据库配置文件已经安装到 D:\WorkC,同时其他选定的安装组件也已经安装到 D:\WorkC\oracle.iSQL*Plus URL 为:http:// ...

  2. Oracle 汇总函数

    汇总函数,也叫统计函数.聚合函数.分组函数 汇总函数必须跟 group by 语句一起使用,对数据进行分组汇总. ① 求和:sum(col).列必须是数值. ② 最小值:min(col).列可以是数值 ...

  3. Oracle手边常用70则脚本知识汇总

    Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...

  4. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  5. Oracle 列数据聚合方法汇总

    网上流传众多列数据聚合方法,现将各方法整理汇总,以做备忘. wm_concat 该方法来自wmsys下的wm_concat函数,属于Oracle内部函数,返回值类型varchar2,最大字符数4000 ...

  6. CentOS安装Oracle数据库详细介绍及常见问题汇总

    一.安装前准备 1.软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命 ...

  7. Oracle 异常处理汇总

    Oracle 异常处理汇总 1.plsql无法连接 安装oracle,中间录入密码,用户是:sys,pass: 录入的密码. 连接数据库,建议创建新的用户,最好别直接用sys 安装完毕,则需要配置Ne ...

  8. 64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录

    64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录 经过几天不停的网上找资料,实验,终于联通了. 环境:系统:win 2008 ,SqlServer2008 R2, 连接O ...

  9. Oracle横向纵向汇总

    Oracle横向纵向汇总 有一张表test 如下, (NO 学生编号 ,cj 成绩) NO name KM CJ 001 张三 语文 80  001 张三 数学 86  001 张三 英语 75  0 ...

随机推荐

  1. json : json数据解析(一)

    在项目中经常用到json格式的数据转换与解析,先前写过一些小例子,现在整理下,以备后用和帮助后来者. 言归正传: 使用到的jar包 :json-lib-2.4-jdk15.jar,当然你也可以用自己版 ...

  2. Bishops

    题意: 给定一个 $n*n$ 的国际棋盘,求问在上面放 $K$ 个象的方案数. 解法: 首先可以发现黑格和白格互不干扰,这样我们可以将黑格,白格分别求出. 考虑 $f(i,j)$ 表示坐标化后考虑长度 ...

  3. python-format函数

    #通过位置 print '{0},{1}'.format('chuhao',20) print '{},{}'.format('chuhao',20) print '{1},{0},{1}'.form ...

  4. 3 pyspark学习---sparkContext概述

    1 Tutorial Spark本身是由scala语言编写,为了支持py对spark的支持呢就出现了pyspark.它依然可以通过导入Py4j进行RDDS等操作. 2 sparkContext (1) ...

  5. 清理win10系统c盘

    本人C盘是128G SSD硬盘,Win10系统盘和一些常用的程序都装在这个盘(特大程序除外),目的是为了使用这些程序时提高响应速度.但是本人电脑使用1年,突然发现C盘以占用近70G的空间,实在是吓蒙撒 ...

  6. CF364D Ghd(随机化)

    另一个集合\(s\)的\(ghd\)为\(max\{gcd(s')||s'|>=0.5|s|\}\) 给定序列\(a\),求\(ghd\) 随机化算法.因为\(|s'|\geq 0.5|S|\) ...

  7. 黑马MySQL数据库学习day02 表数据CRUD 约束CRUD

    /* 基础查询练习: 1.字段列表查询 当查询全部字段时,一种简便方式,使用*代替全部字段(企业中不推荐使用) 2.去除重复行 DISTINCT,注意修饰的是行,也就是整个字段列表,而不是单个字段. ...

  8. Maven聚合工程怎么变回普通的Maven工程

    问题 Maven聚合工程的父工程的packaging是pom,如果我们将其改为jar,会立刻报错: Project build error: 'packaging' with value 'jar' ...

  9. sql索引的作用

    转https://www.cnblogs.com/hyd1213126/p/5828937.html (一)深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录.微软的SQL SERVER提 ...

  10. DRF教程2-请求和响应

    Request objects REST framework中有一个Request对象,是HttpRequest的扩展,提供了新的请求解析,Request的核心功能就是request.data,它和r ...