1

我需要从一些 oracle 数据库表中获取数据并将其格式化为固定宽度的文本文件。我想知道是否可以使用 sql 创建文本文件。我看了一些东西,发现了 bc 和 xp_cmdshell 但它们有点令人困惑。

我对 sql 和 oracle 数据库很陌生。

这可能吗?我该如何开始?

我不需要打开文件或检查现有文件,覆盖很好,最简单的方法。我不需要任何大的或复杂的东西,一个简单的脚本来获取值并创建一个文本文件。

只是一个更新:我认为 bcp 在 toad for oracle 编辑器中不起作用。我在这里找到了这个教程:http ://www.sqlteam.com/article/exporting-data-programatically-with-bcp-and-xp_cmdshell 但是第一个 bcp 命令没有编译,它说无效的 sql 查询

4

2 回答 2

2

如果您使用的是 SQL*Plus 客户端,您可以假脱机到一个输出文件。这是一个示例 SQL*Plus 文件:

set serveroutput on size 1000000
set linesize 150
spool C:\path_to_file\filename.extension

-- Your SQL statement
select columns
from table
where somecondtion;

-- Your next SQL Statement
select ...
from ...;

spool off
于 2013-10-24T18:51:06.277 回答
0

我认为您可以使用 sqlplus 命令行工具来执行此操作。有关格式提示,请参阅oracle 手册

于 2013-10-24T18:52:42.433 回答