我正在使用Oracle 11g
我正在尝试从结果集创建一个平面文件(CSV或TXT),但我还在努力开始。好像我必须创建一个存储过程并使用UTL_FILE
。做了一些研究后,我有两个问题:
文件在哪里创建?根据{{3}},我需要访问Oracle用户目录,但在Windows和Linux环境中的位置是什么?我必须在Windows上进行测试,该脚本最终将在Linux环境中进行。
创建上述文件并从相当基本的SELECT
查询中加载数据的SQL脚本的基本格式是什么?我没有看到UTL_FILE
函数将记录写入文件;我是否必须遍历整个结果集并使用PUT
或者我能以某种方式将整个结果推送到文件中吗?
答案 0 :(得分:2)
我认为使用" spool"可以做到这一点。
查看https://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:9518534700346581975
此处有更多信息http://www.dba-oracle.com/t_sqlplus_spool.htm
该文件将在您从中启动sqlplus的目录中创建。
答案 1 :(得分:0)
如果您使用的是SQL Developer,则可以为查询创建一个视图。在架构浏览器中右键单击视图,然后选择导出和导出为csv。
但就我之前的回答所说,我个人会选择假脱机。 SQL Plus是最基本的客户端,所以我不相信你不会拥有它。