事务(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. ServiceStack.redis用法

    using System; using System.Collections.Generic; using ServiceStack.Redis; namespace SysBuild { class ...

  2. linux openjdk环境变量配置

    下载openjdk : https://jdk.java.net/ tar -xvf ... nano ~/.bashrc export JAVA_HOME=... export PATH=$JAVA ...

  3. java/rabbitmp发布订阅示例(转)

    原文:http://www.cnblogs.com/tinmh/p/6134875.html 发布/订阅模式即生产者将消息发送给多个消费者. 下面介绍几个在发布/订阅模式中的关键概念-- 1. Exc ...

  4. [可行]setoolkit生成木马软件远程控制实例

    查看原文 选1,social-ensineering attacks 选4,create a payload and listener 选2,Windows Reverse_TCP Meterpret ...

  5. Android开发之深入理解NFC(一)

    深入理解NFC NFC(Near field communication,近场通信)也叫做近距离无线通信技术. 从原理来说,NFC和wifi类似,二者都利用无线射频技术来实现设备之间的通信. 但是,和 ...

  6. [LintCode笔记了解一下]41.Maximum Subarray

    Given an array of integers, find a contiguous subarray which has the largest sum. 首先 當題目涉及到求最大最小值時,最 ...

  7. 修改TomCat端口实现多实例

      TomCat默认的端口是8080,还会占用8005,8009和8443端口.如果已经启动了tomcat,再启动一个tomcat会发现这些端口已经被占用了,这个时候就需要修改端口号.   以apac ...

  8. linux 权限机制

    系统每个文件都拥有特定的权限,所属用户及所属组,通过这样的机制限制哪些用户.哪些组可以对特定文件进行什么样的操作,一般分为读.写.执行三种权限. 每个进程都是以某个用户的身份运行,所以进程的权限与该用 ...

  9. [LeetCode 题解]: Count and Say

    The count-and-say sequence is the sequence of integers beginning as follows:1, 11, 21, 1211, 111221, ...

  10. 查看linux ssh服务信息及运行状态

    关于ssh服务端配置有不少文章,例如 linux下ssh服务配置,这里仅列举出一些查看ssh服务相关信息的常用命令. rpm -qa | grep ssh 可以看到系统中ssh安装包 rpm -ql ...