Di bawah ini adalah contoh langkah demi langkah yang diberikan untuk mengekspor data ke file CSV di Oracle menggunakan prosedur PL SQL. Dalam contoh ini, data sedang diekspor dari beberapa bidang Tabel Emp dari skema Scott ke file CSV menggunakan paket Oracle UTL_FILE. Ikuti langkah-langkah di bawah ini untuk mengekspor data dari tabel Database Oracle ke file CSV. 1. Buat Objek Direktori tempat Anda akan menulis file CSV.
-- untuk sistem windows buat sebagai berikut, ubah folder yang disorot dengan direktori AndaCREATE OR REPLACE DIRECTORY CSVDIR AS 'd:\temp'
/
-- untuk sistem Unix/Linux buat sebagai berikutCREATE OR REPLACE DIRECTORY CSVDIR AS '/temp/'
/
Catatan:Ubah lokasi folder ke lokasi direktori Anda, mis., c:\abc atau /abc/. 2. Buat Prosedur Basis Data dalam skema Scott atau jika Anda membuat dalam skema lain, pastikan Anda memiliki tabel Emp dalam skema itu, jika tidak, Anda perlu mengubah kursor dan referensi bidang untuk tabel lainnya.
CREATE OR REPLACE PROCEDURE export_to_csv
IS
v_file UTL_FILE.file_type;
v_string VARCHAR2 (4000);
CURSOR c_emp
IS
SELECT empno,
ename,
deptno,
sal,
comm
FROM emp;
BEGIN
v_file :=
UTL_FILE.fopen ('CSVDIR',
'empdata.csv',
'w',
1000);
-- if you do not want heading then remove below two lines
v_string := 'Emp Code, Emp Name, Dept, Salary, Commission';
UTL_FILE.put_line (v_file, v_string);
FOR cur IN c_emp
LOOP
v_string :=
cur.empno
|| ','
|| cur.ename
|| ','
|| cur.deptno
|| ','
|| cur.sal
|| ','
|| cur.comm;
UTL_FILE.put_line (v_file, v_string);
END LOOP;
UTL_FILE.fclose (v_file);
EXCEPTION
WHEN OTHERS
THEN
IF UTL_FILE.is_open (v_file)
THEN
UTL_FILE.fclose (v_file);
END IF;
END; 3. Sekarang jalankan prosedur sebagai berikut:
BEGIN
export_to_csv;
END;
Anda sekarang dapat memeriksa direktori yang Anda tentukan dalam perintah Buat Direktori bahwa file empdata.csv harus ada dengan tabel data. Saya telah membuat utilitas yang menghasilkan prosedur online, coba: - Buat Prosedur PL/SQL Online untuk Mengekspor Data Dari Tabel
