Saturday, May 9, 2009

การโหลดข้อมูลออกเป็น Text File

Updated: 8/03/2009

เปิด Text Editor แล้วคีย์อินคำสั่งข้างล่าง
==============================
set heading off
set linesize 1000
set pagesize 0
set echo off

spool d:\table1.dat

select
'COL1|COL2|COL3|COL4|' from dual
union all
select
trim(col1) ||'|'||
trim(col2) ||'|'||
trim(col3) ||'|'||
trim(col4) ||'|'
from table1;

spool off
==============================

คำสั่ง Spool เป็นการเขียน Output ที่ได้ไปไว้ในไฟล์ที่กำหนด ในตัวอย่างนี้เรารันคำสั่ง Select ให้แสดงข้อมูลในคอลัมน์ที่ต้องการคั่นด้วยไปป์ (|) ส่วนแรกของคำสั่งเป็นการแสดงชื่อคอลัมน์เพื่อให้ชื่อคอลัมน์ปรากฎในไฟล์ด้วย เราอาจจะรันสคริปต์ข้างบน โดยคีย์สคริปต์เข้าใน SQL*Plus หรือ Save เป็นไฟล์แล้วรันสคริปต์ก็ได้ดังต่อไปนี้

ตอนรันจะ connect เข้า SQL*Plus
C:\> SQLPLUS scott
SQL> @ชื่อไฟล์ (อาจจะต้องใส่พาธด้วย)

หรือสามารถรันบน DOS prompt โดย
C:\> echo @ชื่อไฟล์ (อาจจะต้องใส่พาธด้วย) | sqlplus scott/tiger@orcl

1 comment:

คมสรร said...

ขอบคุณครับ

Post a Comment