在SQL * Plus中逐行读取文本文件

时间:2011-09-29 09:22:58

标签: oracle sqlplus text-files

如何从Oracle SQL * plus读取文本文件?

如果有一种方法可以从bat文件中读取并将变量作为单行文本文件传递,同时从SQL * plus sql文件调用,则此选项可以。

2 个答案:

答案 0 :(得分:2)

您可以尝试使用Oracle External Tables

例如,您有下一个文件:

$ cat employee.dat

smith   clerk       800
scott   analyst     3000
adams   clerk       1100
miller  clerk       1300

创建外部表:

create table employees (
ename varchar2(10),
title varchar2(10),
salary number(8))
organization external(
type oracle_loader default directory work_dir
    access parameters (record delimited by new line fields(
        ename char(10), title char(10), salary char(8)))
location ('employee.dat'))
parallel

现在您可以将此文件用作SQL表:

select * from employees;

答案 1 :(得分:0)

如果列表已在测试文件中以逗号分隔,则可以 可能在SQL * Plus中做一些简单的事情......

获取id.txt 追加) 0从my_table中选择*,其中id为( /