深入浅出Oracle 12数据导入实操攻略(oracle12数据导入)

深入浅出:Oracle 12数据导入实操攻略

Oracle 12是一款非常强大的数据库,但是对于初次使用者来说,不可避免会面临许多问题,尤其是数据导入这一块。在实际工作中,数据导入操作占据了大量的时间和精力,因此,本文将深入浅出地为大家介绍Oracle 12数据导入的实操攻略,并附上相应的代码。

一、Oracle 12数据导入前的准备工作

在进行数据导入操作之前,我们需要先进行一些准备工作,以确保导入操作的成功。

1、创建数据表

运行以下代码:

CREATE TABLE example_table (

ID INT PRIMARY KEY,

NAME VARCHAR2(20),

AGE INT,

ADDRESS VARCHAR2(50)

);

其中,example_table表示要创建的数据表名称,ID为主键,NAME表示姓名,AGE表示年龄,ADDRESS表示地址。

2、创建数据文件

运行以下代码:

CREATE TABLESPACE example_ts

DATAFILE ‘example_ts.dbf’ SIZE 500M AUTOEXTEND ON;

其中,example_ts表示要创建的数据文件名称,example_ts.dbf为数据文件的命名,SIZE用于设置数据文件的大小,这里设置为500M,AUTOEXTEND ON表示数据文件自动扩容。

3、创建数据文件组

运行以下代码:

CREATE TEMPORARY TABLESPACE example_temp_ts

TEMPFILE ‘example_temp_ts.dbf’ SIZE 500M AUTOEXTEND ON

EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;

其中,example_temp_ts表示要创建的数据文件组名称,example_temp_ts.dbf为数据文件的命名,SIZE用于设置数据文件的大小,这里设置为500M,AUTOEXTEND ON表示数据文件自动扩容,EXTENT MANAGEMENT LOCAL表示使用本地空间管理策略,UNIFORM SIZE 1M表示每个extent大小为1M。

4、创建用户

运行以下代码:

CREATE USER example_user IDENTIFIED BY example_password

DEFAULT TABLESPACE example_ts

TEMPORARY TABLESPACE example_temp_ts

QUOTA UNLIMITED ON example_ts;

其中,example_user表示要创建的用户名,example_password表示密码,example_ts为默认表空间,example_temp_ts为临时表空间,QUOTA UNLIMITED ON example_ts表示对于example_ts表空间,该用户拥有无限的表空间限额。

5、授权

运行以下代码:

GRANT CREATE SESSION, CREATE TABLE TO example_user;

其中,CREATE SESSION表示授权用户创建新的会话,CREATE TABLE表示授权用户创建新的表。

二、Oracle 12数据导入

在我们进行数据导入操作之前,我们首先需要准备好数据文件,这里我们以example.csv作为示例文件,示例文件内容如下:

1,Tom,25,New York

2,Jack,30,Los Angeles

3,Alice,20,Florida

4,Bob,40,Boston

1、使用SQL Loader导入数据

SQL Loader是Oracle常用的数据导入工具,我们可以利用SQL Loader来导入数据。

我们需要创建SQL Loader控制文件example.ctl,代码如下:

LOAD DATA

INFILE ‘example.csv’

TRUNCATE INTO TABLE example_table

FIELDS TERMINATED BY ‘,’

(ID,NAME,AGE,ADDRESS)

其中,LOAD DATA表示要导入数据,INFILE后紧接着的是数据文件路径及名称,TRUNCATE表示将原来的表数据删除,然后再导入新的数据,FIELDS TERMINATED BY ‘,’表示字段以逗号分隔,最后的括号中写的是数据表中各字段的名称。

然后,我们运行以下命令:

sqlldr example_user/example_password control=example.ctl

其中,sample_user/sample_password表示数据库用户名及密码,control=example.ctl表示指定导入数据的控制文件。

2、使用外部表导入数据

外部表也是Oracle常用的数据导入方式,我们可以利用外部表来实现数据导入,外部表的创建步骤如下:

1)我们需要创建外部表目录:

CREATE DIRECTORY example_dir AS ‘/path/to/directory’;

其中,example_dir为目录名称,’/path/to/directory’为实际目录路径。

2)然后,我们需要创建外部表:

CREATE TABLE example_external (

ID INT,

NAME VARCHAR2(20),

AGE INT,

ADDRESS VARCHAR2(50)

)

ORGANIZATION EXTERNAL (

TYPE ORACLE_LOADER

DEFAULT DIRECTORY example_dir

ACCESS PARAMETERS (

RECORDS DELIMITED BY NEWLINE

FIELDS TERMINATED BY ‘,’

MISSING FIELD VALUES ARE NULL

(

ID,

NAME,

AGE,

ADDRESS

)

)

LOCATION (‘example.csv’)

);

其中,example_external表示是否要创建外部表,ID、NAME、AGE、ADDRESS表示表中各字段的名称及类型,ORGANIZATION EXTERNAL表示这是一个外部表,TYPE ORACLE_LOADER表示使用Oracle Loader导入数据,DEFAULT DIRECTORY example_dir指定外部表目录,ACCESS PARAMETERS用于指定导入参数,RECORDS DELIMITED BY NEWLINE表示记录通过换行符分隔,FIELDS TERMINATED BY ‘,’表示字段以逗号分隔,MISSING FIELD VALUES ARE NULL表示遇到缺失值时填充NULL,小括号中写的是要导入的各字段名称,最后的LOCATION (‘example.csv’)表示指定数据文件路径及名称。

然后,我们可以运行以下命令来导入数据:

INSERT INTO example_table SELECT * FROM example_external;

以上就是Oracle 12数据导入的实操攻略。通过本文的介绍,相信读者已经掌握了相关的技能和操作方法,可以在实际工作中运用自如。


数据运维技术 » 深入浅出Oracle 12数据导入实操攻略(oracle12数据导入)