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.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *