ORACLE/Trouble Shooting
ORA-00997: illegal use of LONG datatype
내맘대로긍정
2023. 12. 13. 17:13
OS환경 : Oracle Linux 7.4 (64bit)
DB 환경 : Oracle Database 19.3.0.0
에러 : ORA-00997: illegal use of LONG datatype
테이블 생성시 ctas로 long type 컬럼을 넣어 만들때 발생하는 에러
테이블 생성 시도
1
2
3
4
5
6
7
8
9
10
|
SQL>
create table temp_high1 as
select table_name, partition_name, high_value
from dba_tab_partitions
where table_name = 'PTABLE';
select table_name, partition_name, high_value
*
ERROR at line 2:
ORA-00997: illegal use of LONG datatype
|
에러가 발생함
해결 방법 : to_lob 를 이용해 clob 형식으로 변환 후 생성
to_lob 를 사용해서 테이블 생성
1
2
3
4
5
6
7
|
SQL>
create table temp_high2 as
select table_name, partition_name, to_lob(high_value) as high_value
from dba_tab_partitions
where table_name = 'PTABLE';
Table created.
|
정상적으로 생성됨
원인 : 정확한 이유는 찾지못함
테이블당 하나의 long 타입의 컬럼을 가질수 있다고 하는데
현재 예제에선 하나의 long 타입만 넣었는데도 에러가 발생함
정확한 이유는 찾지못함
참조 : 361716.1
https://positivemh.tistory.com/969