定義済みのディレクトリに格納されているExcelシートにデータを書き込む際に問題はありません。OracleでUTL_FILEパッケージを使用してExcelSheetに書き込む
今私は10セットのデータを持っており、各セットごとに10枚のエクセルシートを作成する必要があります。 しかし、私が望むのは、シート1、シート2を提出するワークブックを作成することです。 Sheet10。これは、記録のすべての10セットを持っています。私の質問が明確でない場合は、私に知らせてください。
私は、データの1セットのために秀でるために書きますPL/SQLのOracle 9iの
マイコードを使用しています。より多くのデータがあり、複数のExcelシートを必要としない場合は、diffシート付きのワークブックが1つ必要です。
CREATE OR REPLACE PROCEDURE SP_ORACLE_EXCEL(I_FILE_NAME IN VARCHAR2) AS
FILENAME UTL_FILE.FILE_TYPE;
FILENAME1 VARCHAR2(1000);
CURSOR C1 IS
SELECT * FROM MY_TABLE;
VARC1 C1%ROWTYPE;
BEGIN
FILENAME1 := 'TEST_' || I_FILE_NAME || '_' || SYSDATE || '.CSV';
FILENAME := UTL_FILE.FOPEN('TEMP_DIR', FILENAME1, 'W');
/* THIS WILL CREATE THE HEADING IN EXCEL SHEET */
UTL_FILE.PUT_LINE(FILENAME,
'HEADER1' || ',' || 'HEADER2' || ',' || 'HEADER3' || ',' ||
'HEADER4' || ',' || 'HEADER5');
OPEN C1;
LOOP
FETCH C1
INTO VARC1;
EXIT WHEN C1%NOTFOUND;
/* THIS WILL PRINT THE RECORDS IN EXCEL SHEET AS PER THE QUERY IN CURSOR */
UTL_FILE.PUT_LINE(FILENAME,
'"' || VARC1.COL1 || '"' || ' ,' || '"' ||
VARC1.COL2 || '"' || ' ,' || '"' ||
VARC1.COL3 || '"' || ' ,' || '"' ||
VARC1.COL4 || '"' || ' ,' || '"' ||
VARC1.COL5|| '"');
END LOOP;
UTL_FILE.FCLOSE(FILENAME);
END SP_ORACLE_EXCEL;
は分かりません。 – chance
@chance .nowは明らかです。 – Avi
UTL_FILEでxlsファイルを作成するにはどうすればよいですか?私たちと分かち合うことができますか? –