事务(Transaction)

  • 事务(Transaction)是一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位。
  • 事务是为了保证数据库的完整性
  • 在oracle中,没有事务开始的语句。一个Transaction起始于一条DML(Insert、Update和Delete )语句,结束于以下的几种情况:
    •   用户显式执行Commit语句提交操作或Rollback语句回退。
    •   当执行DDL(Create、Alter、Drop)语句事务自动提交。
    •   用户正常断开连接时,Transaction自动提交。
    •   系统崩溃或断电时事务自动回退。
  • Commit表示事务成功地结束,此时告诉系统,数据库要进入一个新的正确状态,该事务对数据库的所有更新都以交付实施。每个Commit语句都可以看成是一个事务成功的结束,同时也是另一个事务的开始。
  • Rollback表示事务不成功的结束,此时告诉系统,已发生错误,数据库可能处在不正确的状态,该事务对数据库的更新必须被撤销,数据库应恢复该事务到初始状态。每个Rollback语句同时也是另一个事务的开始。
  • 一旦执行了commit语句,将目前对数据库的操作提交给数据库(实际写入DB),以后就不能用rollback进行撤销。
  • 执行一个 DDL ,DCL语句或从 SQL*Plus正常退出,都会自动执行commit命令。
  • 提交或回滚前数据的状态
     以前的数据可恢复
     当前的用户可以看到DML操作的结果
     其他用户不能看到DML操作的结果
     被操作的数据被锁住,其他用户不能修改这些数据
  • 提交后数据的状态
     数据的修改被永久写在数据库中.
     数据以前的状态永久性丢失.
     所有的用户都能看到操作后的结果.
     记录锁被释放,其他用户可操作这些记录.
  • 回滚后数据的状态语句将放弃所有的数据修改
     修改的数据被回退.
     恢复数据以前的状态.
     行级锁被释放.

序列

一、概念:
    序列(sequence):oracle专有的专有对象
二、作用:
    产生一个自动递增的数列

三、创建一个序列:
    create sequence seq_name
    increment by 1
    start with 1

四、使用序列:
    序列名.nextval
    序列名.currval

视图view

一、定义:
    视图(view):一种不占用物理空间的虚表。

二、作用:
    将一些查询复杂的SQL语句变为视图,便于查询

三、语法:
create [or replace] view v$_name
as sub-query
[with read only]

四、需要注意的点:
    1.视图也可以从视图中产生
    2.我们把用于产生视图的表称之为基表
    3.我们对视图进行数据修改就是对基表进行数据修改,反之亦然
    4.不能对多张表的数据,通过视图进行修改。

五、使用视图需要注意
    1.一般来讲,只有重复出现非常多次的SQL语句,才会创建视图
    2.数据库迁移,视图也得随之迁移,否则在新数据中是不能用的
    3.创建视图时,尽量不要带or replace

数据类型

数据库表字段的数据类型
字符数据类型
CHAR:存储固定长度的字符串  
VARCHAR2 :存储可变长度的字符串
数值数据类型
NUMBER:存储整数和浮点数,格式为NUMBER(p, s)
column_name  NUMBER        { p = 38, s = 0}
column_name  NUMBER (p)   {整数}   column_name  NUMBER (p,s)  {浮点数}
日期时间数据类型
DATE:存储日期和时间数据
TIMESTAMP:比DATE更精确  
LOB数据类型
BLOB:存储二进制对象,如图像、音频和视频文件
CLOB:存储字符格式的大型对象

Oracle中-事务-序列-视图-数据类型笔记的更多相关文章

  1. Oracle中建立物化视图报错

    Oracle中建立物化视图报错 今天在建立视图的时候,报了一个错:ORA-01723: zero-length columns are not allowed. 建视图的语句: create mate ...

  2. Oracle中的序列

    序列是什么? 序列是用来生成唯一.连续的整数的数据库对象.序列通常用来自动生成主键或唯一键的值.序列可以按升序排列,也可以按照降序排列. 其实Oracle中的序列和MySQL中的自增长差不多一个意思. ...

  3. mysql 模拟oracle中的序列

    因业务需要,把oracle 数据据转成mysql,同时oracle中程序本来一直在用 序列, mysql中没有,所以需要在mysql中新建一个表进行模拟, CREATE TABLE `sequence ...

  4. 【Oracle】详解Oracle中的序列

    序列: 是oacle提供的用于产生一系列唯一数字的数据库对象. 自动提供唯一的数值 共享对象 主要用于提供主键值 将序列值装入内存可以提高访问效率 创建序列: 1.  要有创建序列的权限 create ...

  5. oracle中number对应java数据类型

    本文转自:http://blog.csdn.net/ludongshun2016/article/details/71453125 数据库中为number类型的字段,在Java类型中对应的有Integ ...

  6. 转: Oracle中的物化视图

    物化视图创建语法:CREATE MATERIALIZED VIEW <schema.name>PCTFREE <integer>--存储参数PCTUSED <intege ...

  7. oracle中的序列,可以解决自增各种编号自动增长问题,说一下我的小问题。

    1.生成0001-9999的编码 //在PL/sql中 创建一个序列 Create sequence seq_cdptIncrement by 1 --自增数Start with 1 --开始累加数M ...

  8. oracle中awr性能报告阅读笔记

    1.对于数据库运行的业务不太了解,那么awr性能报告中最需要关注的是Top 5 Timed Foreground Events和Time Model Statistics两个部分

  9. oracle 中 创建序列sequence

    drop sequence SEQ_YCXWP_CGD; create sequence SEQ_YCXWP_CGD increment start nomaxvalue;

随机推荐

  1. 关于select Count()的使用和性能问题

    比如Count(*) FROM E_Table WHERE [date] > '2008-1-1' AND istrue = 0 由于操作的数据比较大(400万以上),所以使用了两个数据库,一个 ...

  2. Openssl pkcs7命令

    一.简介 pkcs7命令用于处理DER或者PEM格式的pkcs#7文件.   二.语法 openssl pkcs7 [-inform PEM|DER] [-outform PEM|DER] [-in ...

  3. 1118 Lining Up

    题目链接: http://poj.org/problem?id=1118 题意: 给定n个点, 求在同一直线上的点最多的直线上点的数目. 解法: 简单题目, 规模比较小,  暴力搜索. #includ ...

  4. python学习的一点点心得

    好久没发博客了,不解释....接下来写一点自己最近学习python的一点心得. 想要学习python的初衷,是看<软件测试技术大全>一书时,了解到像perl.python.ruby等脚本类 ...

  5. POC索引

    最近在看窗口函数,接触到了POC索引,所以借此机会好好研究一下索引. 一般支持窗口函数的索引指南都遵循POC的概念,也就是Partitioning(分区).Ordering(排序)和Covering( ...

  6. 新年奉献MVC+EF(CODEFIRST)+EASYUI医药MIS系统(转)

    出处:http://www.cnblogs.com/chenlinzhi/p/4332628.html 本人闲来无事就把以前用Asp.net做过的一个医药管理信息系统用mvc,ef ,easyui重新 ...

  7. Introduction mybatis

    项目地址 https://github.com/mybatis/mybatis-3 英文官网 http://mybatis.github.io/mybatis-3/ 中文官网 http://mybat ...

  8. Logstash 算术运算操作

    需求:input为json,output为ES,需使用filter提取json中的某个字段,并执行加法.加法.乘法等算法操作 思路:mutate过滤器+ruby过滤器实现 避坑:根据ES及Logsta ...

  9. java学习(一)数据类型

    一.java的安装及环境变量的配置 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ...

  10. [LeetCode 题解]: LetterCombinations

    Given a digit string, return all possible letter combinations that the number could represent. A map ...