`

oracle笔记【direct load】

阅读更多
oracle在插入数据的时候有2种方式:
     1.如果在hwm前面存在空余的空间,数据将会直接在hwm(高水位线)前面空余的空间插入
同时将会受到数据完整性约束的影响。
    
SQL> create table bt as select * from all_objects where 1=0;

Table created.

SQL> select count(*) from all_objects;

  COUNT(*)
----------
     30645

SQL> insert into bt select * from all_objects;

30645 rows created.

SQL> select count(*) from bt;

  COUNT(*)
----------
     30645


注意:在这里我还没有commit,我用select语句查看可以执行
     2.direct-path insert 也就是直接插入的方式。它不会考虑hwm前面是否有空余的空间,它会直接在hwm后面直接插入。如果commit后会直接通过buffer cache 写进数据文件,它不会等带checkpoint的时候才写数据到数据文件。
      这种方式有2种模式:serially(串行),parallel(并行)
     a serially direct load
SQL> commit;

Commit complete.

SQL> select count(*) from bt;

  COUNT(*)
----------
     30645

SQL> insert /*+append */ into bt select * from all_objects;

30645 rows created.

SQL> commit;

Commit complete.

SQL> select count(*) from bt;

  COUNT(*)
----------
     61290

注意:在这里我还没有commit的时候它是不可以select的,一旦我commit后就可以用select查看了
     b. parallel direct load
--创建分区表
SQL> create table emp (empno number,empname varchar2(20)) 
  2  partition by hash(empno)
  3  (partition part1,
  4  partition part2)
  5  /

Table created
SQL> col object_name format a40
SQL> select object_name,object_type from user_objects;

OBJECT_NAME                              OBJECT_TYPE
---------------------------------------- ------------------
EMP                                      TABLE PARTITION
EMP                                      TABLE PARTITION
EMP                                      TABLE
T                                        TABLE
--修改session打开并行
SQL> alter session enable parallel dml;

Session altered.
--parallel(u1.bt,2) 2表示打开2并行度
SQL> insert /*+parallel(u1.bt,2) */ into u1.bt nologging
  2  select * from user_objects;

13925 rows created.
SQL> select count(*) from u1.bt;

  COUNT(*)
----------
     13925
SQL> commit;

Commit complete.

SQL> select count(*) from u1.bt;

  COUNT(*)
----------
     13925
分享到:
评论

相关推荐

    Oracle笔记

    这个是我学习网上的视频做的oracle笔记,对于oracle一窍不通的菜鸟可能有用吧,大家有需要可以看看

    李兴华Oracle全部笔记

    李兴华Oracle全部笔记是一份详细记录了Oracle相关知识的学习资料,涵盖了从基础概念到高级特性的全面讲解。这些笔记可能是李兴华在深入研究Oracle后的心得体会,对于想要学习或提升Oracle技能的人来说是一份宝贵的...

    2011Oracle笔记(李兴华视屏教程笔记)

    标题“2011Oracle笔记(李兴华视屏教程笔记)”揭示了文档的用途,它是作为2011年李兴华Oracle教学视频课程的学习笔记。这种笔记通常包括了课程中的重点概念、Oracle数据库基础知识、实际操作案例以及配合视频教程的...

    Oracle学习笔记 PDF

    ### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...

    韩顺平oracle笔记(免费)

    ### 韩顺平Oracle笔记知识点详解 #### 一、Oracle认证及与其他数据库的比较 - **Oracle认证**:Oracle提供了多种级别的认证体系,包括OCA(Oracle Certified Associate)、OCP(Oracle Certified Professional)、...

    oracle sqlload loaddata.ctl 使用例子

    在这个"oracle sqlload loaddata.ctl 使用例子"中,我们将深入探讨如何利用SQL*Loader将文本文件(如"data.txt")中的数据高效地加载到Oracle数据库中。 首先,`loaddata.ctl`是SQL*Loader的数据装载控制文件,它是...

    MLDN最经典的ORACLE笔记

    《MLDN最经典的ORACLE笔记》是李兴华老师倾力打造的一份全面而深入的Oracle学习资源,专为对数据库技术感兴趣的读者精心准备。Oracle作为全球广泛使用的数据库管理系统,其强大功能和复杂性使得深入理解和掌握Oracle...

    马士兵oracle笔记

    马士兵oracle笔记,浅显易懂。

    史上最全的oracle笔记

    这篇史上最全的Oracle笔记将为你提供全面的学习指导。 一、数据库基础 数据库(DataBase)是存储数据的系统,Oracle数据库允许用户以表格的形式组织和管理数据。在Oracle中,数据主要以表的形式存在,表是数据库中...

    达内,tarena,oracle笔记,oraclePPT课件,达内oracle笔记

    达内(Tarena)是一家知名的IT教育机构,他们提供了关于Oracle的学习资源,包括笔记和PPT课件,帮助学员深入理解Oracle数据库的原理与操作。这些资料通常会涵盖Oracle数据库的基础知识、SQL查询语言、数据管理、...

    Oracle课堂笔记(很全很详细的Oracle笔记)

    根据提供的信息,我们可以总结出以下关于Oracle的相关知识点: ### Oracle基础知识与分类 #### DDL (Data Definition Language) 数据定义语言 - **DDL** 主要用于创建、修改或删除数据库对象,如表、索引等。 ###...

    oracle笔记创建和管理表

    oracle笔记创建和管理表,增加列,删除列,修改列,修改列名和数据类型和长度,修改表名等等操作,有代码案例!

    oracle笔记+资料.rar

    本资源“oracle笔记+资料.rar”包含了丰富的Oracle学习资料,适合不同水平的学习者,无论你是初学者还是资深DBA,都能从中受益。下面将详细解析其中可能涵盖的知识点。 1. **Oracle基础知识**:这部分内容可能会...

    oracle adg安装个人笔记

    oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记oracle adg安装个人笔记...

    oracle笔记.docx

    在Oracle学习笔记中,我们关注的关键概念主要包括以下几个方面: 1. **数据缓冲区**:这是Oracle内存架构的重要组成部分,用于存储从磁盘数据文件中读取的数据。所有用户共享这个缓冲区,当数据被服务器进程读入后...

    oracle笔记.pdf

    其中,“i”在Oracle8i中表示增加了对Internet的支持,Oracle9i则是Oracle8i的稳定版本,而Oracle10g是基于网格计算技术的版本,Oracle11g是10g的稳定版本,Oracle12C则是支持云计算概念的最新版本。在初学者阶段,...

    Oracle学习笔记

    Oracle学习笔记 Oracle学习笔记是李兴华老师编写的Oracle从入门到精通的学习笔记,涵盖了 Oracle 的多表查询、连接、组函数和分组统计等知识点。在本篇笔记中,李兴华老师详细介绍了多表查询的基本语法、左右连接...

    韩顺平老师oracle笔记

    根据给定的文件信息,以下是从“韩顺平老师oracle笔记”中提炼出的关键知识点,主要涉及Oracle数据库的基础概念、用户管理以及SQL*Plus的基本操作。 ### Oracle数据库基础 1. **Oracle数据库的角色与权限**: - *...

    Oracle 笔记 详解 资料 用例

    这份"Oracle笔记详解资料用例"涵盖了Oracle数据库的核心概念、安装配置、SQL语言、表和索引、存储结构、备份恢复、性能优化等多个方面,是学习和掌握Oracle数据库的宝贵资源。 首先,Oracle数据库的基础部分包括...

    Oracle笔记1.txt

    比较全的Oracle学习笔记

Global site tag (gtag.js) - Google Analytics