0

Oracle テーブルから Excel の複数のシートにデータを抽出する方法はありますか?

例: と の 2 つのテーブルがcheckpointsありholdます。からのデータをcheckpointsに移動しsheet1、 からのMS excelデータをholdに移動しsheet2ます。

これをオラクルに実装することは可能ですか?

Oracle version: Oracle 11G

  • 編集: PL/SQL を使用してこれを実装したいと思います。このコードは、バッチ ジョブとして実行されます。
4

3 に答える 3

4

生成するスプレッドシートが非常に単純な場合 (つまり、データを含むセルと複数のシートのみ)、Alexandria PL/SQL ライブラリの Excel 生成 API を試すことができますXLSX_BUILDER_PKG。 )そしてそれは仕事をするべきです。

私自身、XLSX 形式の単純なスプレッドシートを生成するために使用しましたが、すべて PL/SQL で作成されています。結果は BLOB で返されます。データベース サーバーで結果が必要な場合は、UTL_FILE でそれを吐き出すための別のルーチンがライブラリにあります。

于 2013-02-05T05:07:59.667 に答える
0

もちろんそれは可能ですが、それをどのように行いたいかによって異なります。

1) レポート ツール (Jasper Reports、Oracle BI) がある場合は、そのツールを使用してレポートを作成し、データをエクスポートできます。

2) 開発者ツール (Toad、SQL Developer) がある場合は、2 つのテーブルを「手動で」エクスポートできます。

3) コードの書き方を知っている場合は、API を使用して Excel ファイルを作成し、データを入力することができます。PL/SQL、PHP、C、C++、またはその他のほぼすべての言語を使用できます。必要なのは、Oracle API と Excel API だけです。

于 2013-02-04T16:03:53.263 に答える
-2

複数のシートを持つ Excel ドキュメントを作成し、SQL クエリから別のシートにデータを配置できる PL/SQL パッケージがあります。

以下の例を参照してください。

BEGIN  
    ORA_EXCEL.new_document;  

    ORA_EXCEL.add_sheet('Employees');  
    ORA_EXCEL.query_to_sheet('select * from employees');  

    ORA_EXCEL.add_sheet('Departments');  
    ORA_EXCEL.query_to_sheet('select * from departments', FALSE);  

    ORA_EXCEL.add_sheet('Locations');  
    ORA_EXCEL.query_to_sheet('select * from locations');  

    -- EXPORT_DIR is an Oracle directory with at least  
    -- write permission  
    ORA_EXCEL.save_to_file('EXPORT_DIR', 'example.xlsx');  
END; 

ここで見つけることができる詳細: http://www.oraexcel.com/examples/pl-sql-excel-query-to-sheet-export

于 2014-01-09T14:01:15.213 に答える