sql oracle - 导入文本文件

时间:2017-01-23 13:50:49

标签: sql oracle

我知道这个问题经常被问到,但我自己无法管理。

我的桌面上存储了一个列数据文本文件。 (C:\ Users \用户桌面) 该文件名为ids.txt。

首先,我使用以下代码在sql中创建了一个名为tmp_target_ids的表:

CREATE TABLE tmp_target_ids
(ids number(9,0));

现在我想将文本文件加载到此表中,但无法弄清楚它为什么不起作用。

LOAD DATA LOCAL INFILE 'C:/Users/Desktop/ids.txt' 
INTO TABLE tmp_target_ids COLUMNS TERMINATED BY '\t';

如何将本地数据加载到sql数据库中?

更新:我使用Oracle,我设法手动加载数据,但仍希望有一个脚本

1 个答案:

答案 0 :(得分:3)

假设您可以使用SQLLoader加载此文件,您可以编写一个CTL文件,如:

<强> d:\ ids.ctl

LOAD DATA
INFILE 'd:\ids.txt' 
INTO TABLE tmp_target_ids
FIELDS TERMINATED BY "\t"
(
    ids
) 

说你必须加载如下文件:

<强> d:\ ids.txt

10  
100 
999 

如果您运行以下内容:

sqlldr user/password@yourInstanceName d:\ids.ctl

这就是你得到的:

SQL> select * from tmp_target_ids;

       IDS
----------
        10
       100
       999