2013-06-06 38 views
2

这是我从sqlplus中执行查询:Oracle SELECT INTO OUTFILE,这个查询有什么问题?

select * into outfile 'my_file.txt' 
fields terminated by '\t' lines terminated by '\n' 
from my_table where my_column = 'stuff'; 

我得到以下错误:

FROM keyword not found where expected 

我在做什么错?

P.S.我知道有其他方法可以将输出刷新到文件,但是我真的很想赢得对抗Oracle的...

回答

4

SELECT ... INTO OUTFILE是MySQL特有的语法。它不适用于Oracle等其他DBMS。

在Oracle中,您将围绕声明SPOOL filename ... SPOOL OFF

+2

请注意,这是一个SQL * Plus命令,而不是SQL或PLSQL的一部分 –

+0

没办法赢得这个然后...... spool命令有点痛苦用它打印甚至我的查询和其他所有我输入到输出文件中。有没有其他方法可以将结果导入逗号/制表符分隔的文件中? – Gevorg

+1

如果您对编写PL/SQL存储过程感到满意,可以使用'UTL_FILE'写入文件。 – bobince