1213 error의 경우 int 컬럼에 char를 넣으려고 하는 경우 type이 맞질 않아 생기는 에러입니다.
보통의 경우 unload를 받을때에 null 컬럼은 아무 글자도 없이 구분자로 막히게 됩니다.
예를 들어 구분자가 '|'이라면
1|aa|
|bb|
와 같이 아무 것도 없이 막히게 되지요.
그러므로 unload받은 파일을 열어보신후 잘못된 값이 들어가 있는지 확인하셔야 합니다.
아래의 에러메세지를 보니, 첫번째 라인에서 걸렸네요.
테스트로 아래의 sql을 실행시켜 보시면 null의 입력이 가능한것을 보실수 있습니다.
drop table test;
drop table test_load;
create table test (col1 int);
insert into test values(1);
insert into test values(null);
unload to 'test.unl' select * from test;
create table test_load (col1 int);
load from 'test.unl' insert into test_load;
그럼 도움이 되셨길..
>>김성진 님께서 쓰시길<<
::
:: unload 해서 데이타를 받았습니다.
:: 환경은 똑같고, 테이블은 역시 같은 script로 생성을 했구요..
::
:: 그런데..
::
:: > load from 'chul_jk' insert into chul_jk;
::
:: 1213: Character to numeric conversion error
::
:: 847: Error in load file line 1.
:: Error in line 1
:: Near character position 40
::
::
:: 이런 에러가 납니다.
:: 다운 받은 자료에 보면 integer field가 null 로 들어가 있는 곳에서 이런 에러가 납니다.
::
:: 해결 방법이 없겠습니까...?
::
|