文件Oracle数据库快速导入DBF文件实现自动化(oracle导入dbf)
Oracle数据库快速导入DBF文件实现自动化
随着越来越多企业应用Oracle数据库建设运行,而DBF文件在业务运行中的广泛使用,如何从DBF文件中导入Oracle数据库保存,实现数据同步更新红,变得越来越重要。本文重点讨论了如何快速实现Oracle数据库导入DBF文件,实现自动化,以下为示例步骤:
1. 在Oracle数据库中创建DBF文件相同的表空间,运行如下DDL语句:
SQL> CREATE TABLE abc_tab (
id Number(3),
name Varchar2(20),
age int,
city Varchar2(20)
)
2. 查看DBF文件,运行如下语句查看dbf文件格式:
$od -c abc.dbf
3. 建立一个存放数据的文本文件,如abc.txt,文件格式根据DH文件的字段内容调整,将文件内容复制到abc.txt文件中。
4. 通过Oracle自带的sqlloader.exe外部表加载方式,将转换后的数据加载到Oracle数据库中,具体步骤如下:
$sqlldr control=abc.ctl data=abc.txt log=abc.log
其中abc.ctl文件内容如下:
LOAD DATA
INFILE ‘abc.txt’
INTO TABLE abc_tab
FIELDS TERMINATED BY ‘,’
TRAILING NULLCOLS
(
id,
name,
age,
city
)
的实际操作过程,可参考如下代码:
#!/bin/bash
# 创建表空间
sqlplus myuser/mypass <!
create table abc_tab (
id Number(3),
name Varchar2(20),
age int,
city Varchar2(20)
);
exit;
!
# 将dbf文件的内容转换为txt类型文件
cp abc.dbf abc.txt
# 导入oracle
sqlldr userid=myuser:mypass control=abc.ctl data=abc.txt log=abc.log
通过上述示例,可以快速实现将DBF文件中的数据导出Oracle数据库,实现自动化,节省运维成本,提高人机分工效率。