创建.csv输出的过程

时间:2013-04-22 10:04:58

标签: sql oracle plsql

请帮我创建一个从oracle数据库导出数据到指定路径的过程,因为.csv文件从另一个表中获取学习名称。

QUERY: select * from enrollment where study_name = 'FTY67' ;

我在所有研究名称的同一数据库中有另一张表(研究)。

有没有办法创建程序,从研究表中获取研究名称,并重复此程序为所有研究创建.csv文件?

在互联网上阅读一些文章,但没有找到与此相关的任何内容。 请帮忙。

1 个答案:

答案 0 :(得分:0)

您应该查看假脱机并设置命令。由于数据库通常在远程服务器上运行,因此无法将文件写入本地计算机。为了实现这一点,你必须编写一个sql来禁用终端中的某些特性,然后将结果假脱机到你可以访问的文件中。

这样的事情可能会让你开始:

set term off colsep ";" pause off
spool myfile
select * from x;
spool off
exit

有关可以与SET一起使用的选项的概述,请参阅此处的oracle文档:http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12040.htm

使用正确的设置命令,您可以创建CSV文件。

以上设置命令只是您可能需要的一些命令,但您可能需要使用其他参数来使CSV可用。

最好在file.sql中编写它并使用sqlplus运行它:

sqlplus user@db @file