Sql 将数据从Oracle表传输到文本文件

Sql 将数据从Oracle表传输到文本文件,sql,oracle,plsql,oracle11g,Sql,Oracle,Plsql,Oracle11g,我感兴趣的是,是否可以使用PL/SQL块将Oracle表的内容传输到硬盘上的文本文件中。我需要一个PL/SQL块,它可以下载将用于将日志数据存储到文本文件中的表的内容 关于您可以为此使用UTL\u文件包 您可以尝试以下类型的块- declare p_file util_file.file_type; l_table <your_table_name>.ROWTYPE; l_delimited varchar2(1) := '|'; begin p_file:= utl_file.f

我感兴趣的是,是否可以使用PL/SQL块将Oracle表的内容传输到硬盘上的文本文件中。我需要一个PL/SQL块,它可以下载将用于将日志数据存储到文本文件中的表的内容


关于

您可以为此使用UTL\u文件包

您可以尝试以下类型的块-

declare 
p_file util_file.file_type;
l_table <your_table_name>.ROWTYPE;
l_delimited varchar2(1) := '|';
begin
p_file:= utl_file.fopen('<file_path>','<file_name>','W');
for l_table in (select * from <your_table_name>) loop
utl_file.putline(p_file,l_table.col1||l_delimited||l_table.col2||l_delimited||l_table.col3||l_delimited||l_table.col4||l_delimited <continue with column list .........> ||chr(10));
end loop;    
utl_file.fclose_all();
end;

您可以为此使用UTL_文件包

您可以尝试以下类型的块-

declare 
p_file util_file.file_type;
l_table <your_table_name>.ROWTYPE;
l_delimited varchar2(1) := '|';
begin
p_file:= utl_file.fopen('<file_path>','<file_name>','W');
for l_table in (select * from <your_table_name>) loop
utl_file.putline(p_file,l_table.col1||l_delimited||l_table.col2||l_delimited||l_table.col3||l_delimited||l_table.col4||l_delimited <continue with column list .........> ||chr(10));
end loop;    
utl_file.fclose_all();
end;

普拉蒂克·加格的回答很好。 但是,您可能还需要考虑AN的使用。 基本上,它是一个映射到文件的表。因此,插入到表中的每一行都会自动写入文件。
你可以看到一个例子,pratik garg的答案很好。 但是,您可能还需要考虑AN的使用。 基本上,它是一个映射到文件的表。因此,插入到表中的每一行都会自动写入文件。
您可以看到一个示例

请查看以下链接,您希望在客户端还是服务器端写入的可能重复项。在服务器端和客户端使用UTL_文件您可以从sql*spool*plus查看以下链接可能重复您想在客户端还是服务器端写入。使用UTL_文件作为服务器端和客户端,您可以从sql*spool运行。这将把表中的所有信息下载到文件中?例如,我如何每10分钟运行一次此代码?您还没有询问此条件。。但这也是可能的。。您可以使用计划来运行此作业..我刚刚给了您一个开始您可以使用您想要的格式扩展此作业..:您可以参考网站的日程安排…这将下载所有信息从一个表到文件?例如,我如何每10分钟运行一次此代码?您还没有询问此条件。。但这也是可能的。。您可以使用计划来运行此作业..我刚刚给了您一个开始您可以使用您想要的格式扩展此作业..:您可以参考网站的日程安排。。。