Oracle 10g - 将查询结果写入文件

时间:2010-02-19 20:37:49

标签: sql oracle10g

我想运行200多个选择查询并将结果附加到文件中。所有查询都是date-time变量的唯一差异。我没有权限创建例程,这就是我必须创建所有查询的原因。我没有权限创建视图或其他表来存储结果。我无权访问PL / SQL。

现在我需要创建一个报告,其中包含每个查询的结果(所有结果都是整数)但我似乎没有找到另一个解决方案,而是逐个运行并逐个复制结果。

任何一个奇妙的大脑都可以帮我解决这个问题吗?这很紧急。

3 个答案:

答案 0 :(得分:4)

1 - 将您的查询放在如下的文本文件中:

set pagesize 0;

select some_field
from some_table;

select another_field
from another_table;
/

2 - 将它保存在某个地方(比方说c:\ my_file.sql)

3 - 在命令提示符下运行:

c:\>sqlplus -s username/password@database.domain.com < tmp.sql > output.txt

4 - 查看“output.txt”

答案 1 :(得分:2)

您可以将输出假脱机到文件。

请参阅spool(URL - Oracle 10.2用户指南)命令。

此外:

http://www.praetoriate.com/t_garmany_easysql_the_spool_command.htm

似乎是一些布局提示:

http://www.oracle.com/technology/oramag/code/tips2004/020904.html

答案 2 :(得分:0)

如果您有权访问sqlplus,则可以运行匿名PL / SQL块。

DECLARE
 v_cnt number;
BEGIN
 select ... into v_cnt ...;
 dbms_output.put_line(v_cnt);
END;
.
spool out.log
/
spool off