约束:
什么是约束以及约束的作用:
  为保证数据的完整性(一致性,准确性),需要对数据进行限制,这个限制就叫做约束
  目的:保证数据的完整性(一致性,正确性),使数据符合业务规则(业务逻辑)
 
约束的分类:
  (1).非空约束(not null):保证其中的数据不能为空
  (2).唯一约束(unique):保证其中数据不能重复(唯一)
  (3).主键约束(primary key):保证其中的数据非空且唯一
  (4).外键约束(foreign key):保证其中出现的数据必须为其依附字段(为主键约束或唯一约束约束的字段)中出现过的数据
  (5).检查约束(check):保证其中出现的数据必须符合范围
  外键约束依附的本质是:
    本质上外键约束依附的是能够作为生成索引的字段(被主键约束或唯一约束约束的字段)
 
创建约束的方式:
  (1).直接在constraint标签下创建约束
  (2).通过手动建表的方式直接创建约束和表信息
    ①.在字段后直接声明约束信息 字段名 数据类型 约束类型(约束字段)
    ②.通过constraint关键字声明约束 constraint 约束名 约束类型(约束字段) references 表名 (字段名)
    
索引:
索引的优势:
  提高查询的效率和速度
索引的劣势:
  因为每次创建索引之前都会对表中数据进行动态维护(扫描表中所有数据)
  所以会大大降低增删改的效率及速度
索引是依附于什么存在的:
  索引是需要依据唯一(非重复)的数据存在的,因为无法很好的找到优劣势之间的平衡关系,
  所以数据库会根据唯一约束或者主键约束为我们自动创建索引
 
视图:
定义:
  将表中对某一账户有用的信息单独提取出来叫做视图(view)
创建视图:
  (1).通过view标签右键新建的方式
  (2).create view 视图名 as 查询语句 (with read only)
 
视图的好处:
  (1).剔除对特定用户无用的信息(无用并非指无用数据,而是对特定用户无用)
  (2).具有一定的保密作用
  (3).简化sql语句
 
序列:
序列的作用:
  生成一段等间隔的数字供我们使用(sequence),为了避免数据的重复
 
创建序列:
  (1).通过sequence标签右键新建的方式
  (2).代码创建
 
序列中的参数:
  (1).start with:初始值。指的是序列从哪开始
  (2).minvalue:最小值。
  (3).maxvalue:最大值。
  (4).increment by:自增量。指的是等间隔的数字,这个间隔是多少
  (5).cache:预分配空间(缓冲)。预先分配好的序列值,避免多个请求时,造成的数据库卡顿,默认值为20。
  (6).cycle:循环。指生成的序列值是否循环,不循环为nocycle。
  (7).order:顺序保证。不保证为noorder。
 
 
sql语言
sql语言的分类:
  (1).DML:数据操纵语言。其中包含insert, delete, update
  (2).DQL:数据查询语言。其中包含select
  (3).DDL:数据定义语言。其中包含create, alter, drop等
  (4).DCL:数据控制语言。其中包含grant(给用户权限),revoke(撤销用     户权限)
  (5).TCL:事务控制语言。其中包含commit(提交), rollback(回滚)
 
触发器:
  触发器是许多关系数据库系统都提供的一项技术。
  触发器是当ORACLE事件发生时自动地隐式运行的一项技术。
  ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE操作或对视图进行类似的操作。
 
行级触发器和语句级触发器的区别:
  行级触发器在执行批量添加(或删除、修改)时,添加了几条数据,就触发几次触发器。
  语句级触发器在执行批量添加时,不管添加了几条数据,都只触发一次触发器。
 
常用触发器:
  ①添加数据的时候将相同的数据添加到备份表中
  ②删除数据的同时将删除的数据添加到备份表中
  ③添加操作时间
  ④自动添加流水号(序列号)
 
 

Oracle数据库补充的更多相关文章

  1. 2018.5.28 Oracle数据库补充

    select * from (select rownum rn,e2.* from (select e1.* from emp e1)e2 where rownum<=10)e3 where e ...

  2. Oracle数据库基础知识

    oracle数据库plsql developer   目录(?)[-] 一     SQL基础知识 创建删除数据库 创建删除修改表 添加修改删除列 oracle cascade用法 添加删除约束主键外 ...

  3. 数据导入导出Oracle数据库

    临近春节,接到了一个导入数据的任务,在Linux客户端中的数据有50G,大约3亿3千万行: 刚开始很天真,把原始的txt/csv文件用sh脚本转化成了oralce 的insert into 语句,然后 ...

  4. 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库

    数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...

  5. 看的oracle数据库视频 记的一点笔记

    3个默认的用户    sys          //网络管理员  权限由上到下降低 [最后加上 as sysdba]    system  //本地管理员    scott     //普通用户  默 ...

  6. oracle系列--第五篇 PLSQL连接本地的Oracle数据库

    这篇blog主要是针对新手,我也是个新手:) 我们把oracle成功的安装在了我们的计算机上面,那我们如何才能将PLSQL developer连 接到本地的oracle呢? 首先,我们必须有下面步准备 ...

  7. Oracle数据库之PL/SQL基础

    介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...

  8. Oracle数据库之SQL基础(一)

    主要内容:用户与表空间:表与约束:查询语句. 一.概述 Oracle安装:访问官网,下载 二.用户与表空间 在安装Oracle时在开始菜单里可以用sql puls登录oracle. ★1.系统用户 s ...

  9. 数据库事务隔离级ORACLE数据库事务隔离级别介绍

    本文系转载,原文地址:http://singo107.iteye.com/blog/1175084 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted.Read committ ...

随机推荐

  1. 3、card 卡片

    1.基本用法的使用 /* --- htm l----*/ <ion-content> <ion-card> <ion-card-header> Header < ...

  2. java使用poi.3.10读取excel 2007以上版本(xlsx格式)

    1.在使用过程中,一直报错 throw new ClassNotFoundException(name);原因:没有导入xmlbeans-2.6.0.jar包,建议在使用poi时,将所有包都导入进工程 ...

  3. Path类 操作文件类

    // Path类 IO命名空间 静态类 不能创建对象类名. string str =@"E:\C#程序设计基础入门教程\(第十一天)\122\22\nee.txt"; ////in ...

  4. 【Sql server: T-Sql 技术内幕 系列】之索引篇

    本文系 T-Sql技术内幕系列读后感. 用过数据库的程序猿都知道,索引可以极大的优化sql语句的执行时间,但是您要问我,怎么减少的,我只能说:"抱歉,我也不太清楚." 带着这个疑惑 ...

  5. 再写一篇ubuntu服务器的环境配置文

    三年前写过一篇,但是环境和三年前比已经发生了比较大的变化,于是重新写一篇,自己以后再次配置也比较方便.我个人而言并没有觉得centos比ubuntu好用多少,所以继续选用ubuntu. 一.硬盘分区  ...

  6. 课堂笔记&总结与遇错纠错篇

    一.课堂笔记 二.个人总结 在学习和工作JDK是必不可少的程序员必备工具,遇到问题可以在帮助文档寻找答案! 接受能力不足,老师讲的知识点过去了,我经常还在想上一个知识点.希望老师有时候重点可以讲慢点哈 ...

  7. hibernate从零开始到各种映射

    ORM(对象/关系数据库映射) 对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.它完成了面向对象的编程语言到 ...

  8. Cocos2d-js 开发记录-初始

    GameDev标签很早就建了,现在终于可以往里面添加第一篇文章了. 最近和朋友在做几个小游戏,就是微信社交中的那些有点2的游戏,我自己也觉得有点傻,不过先从小的做起,平时想想挺简单的事情,一旦自己真做 ...

  9. javascript:中文等字符转成unicode

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. 创建Spark镜像文件

    创建Spark镜像文件 1.将spark容器提交到新的镜像中 $>docker commit 01a25bdf1499 myrepos:centos-spark 2.将centos-spark镜 ...