Oracle
如何在 PL/SQL Developer (Oracle) 中自動導出 CSV 查詢?
我不是 Oracle 或 PL/SQL Developer 的專家(我主要使用和管理 mySQL 和 MS SQL Server)。
我不是任何類型的管理員,但可以通過 PL/SQL Developer 讀取 Oracle 中的許多表。
我需要能夠安排以 CSV 格式自動(例如,每天)導出幾個表(嗯,查詢)。無論是我的本地電腦、網路、電子郵件——任何東西。
有誰知道這可能是如何實現的?
一種選擇(在 MS Windows 上)是
- 創建將數據假離線到文件中的 SQL 文件
- 創建呼叫該 SQL 腳本的 BAT 腳本
- 在任務計劃程序中安排每日作業
先決條件是安裝 SQLPlus,如果您還沒有的話。PL/SQL Developer 是一個 GUI 工具;SQLPlus 是一個命令行工具。它可以通過 Oracle客戶端軟體安裝,可從 Oracle 技術網的下載部分下載。
基於 Scott 架構的 SQL 文件可能如下所示:
set linesize 100 set pagesize 100 set colsep ';' spool dept.txt select * from dept; spool off spool emp.txt select * from emp; spool off; exit
BAT文件:
sqlplus -s -l scott/tiger@xe @daily.sql
任務計劃程序:創建一個將在所需時間執行 BAT 腳本的作業;使其在您有權訪問的目錄中執行(例如 C:\Temp 或類似目錄)。
生成的 DEPT.TXT 文件如下所示:
DEPTNO;DNAME ;LOC ----------;--------------;------------- 10;ACCOUNTING ;NEW YORK 20;RESEARCH ;DALLAS 30;SALES ;CHICAGO 40;OPERATIONS ;BOSTON
SQL 文件中的 SET 命令列表非常簡單 - 您可能需要研究許多選項。例如,這是一個包含更多選項(包括列格式)的更長列表:
set termout off set trimspool on set echo off set verify off set autoprint off set serveroutput off set arraysize 1000 set pagesize 0 set linesize 100 set long 10000 set numwidth 10 set feedback off set colsep ';' col empno format 99999 col ename format a10 col sal format 999G990
您必須嘗試這些(可能還有更多)才能找到適合您需求的套裝。