Oracle Tips : How to Copy Table from LONG Datatype
Oracle Tips : How to Copy Table from LONG Datatype
สำหรับปัญหากับตารางที่มี column เป็น LONG Datatype ยังไม่หมดครับ อีกหนึ่งปัญหาคือเราไม่สามารถ copy table ที่มี LONG datatype ด้วย Statement ” Create table <xx> as select * from < long datatype table>” จะเกิด Error
ORA-00997: illegal use of LONG datatype
แต่เราสามารถทำได้โดยใช้ function “TO_LOB” ดังตัวอย่างครับ
1. สร้างตารางทดสอบ Long Datatype as “TEST_LONG_LOB
SQL> CREATE TABLE TEST_LONG_LOB (A NUMBER PRIMARY KEY, B LONG);
Table created.
2. ใส่ข้อมูลทดสอบ 1 record
SQL> INSERT INTO TEST_LONG_LOB VALUES (1,’This is the first entered row’);
1 row created.
SQL> COMMIT;
Commit complete.
3. copy ตาราง “TEST_LONG_LOB” –> TEST_CLOB
SQL> CREATE TABLE TEST_CLOB AS SELECT A, TO_LOB(B) B FROM TEST_LONG_LOB;
Table created.