informix data type의 경우 저장 가능한 길이의 제한은 아래와 같습니다.
BLOB / CLOB: 2G
char : 32767 byte
varchar : 255 byte
따라서 저장 범위를 벗어나서 생기는 문제가 아닐것이라 생각 되구요,
우선 정확한 오류가 어떤것인지, error code를 출력해 보아야 할듯합니다.
그럼 수고하세요,
-- 영미 님이 쓰신 글:
>> 현재 informix에 esql/c를 사용하는데요 db의 데이타 타입은 text타입으로
>> 되어있고요 ,아레 소스와 같은 내용인데요
>> .....
>> data.loc_loctype = LOCMEMORY; (memory형과 filename중 memory형으로)
>> data.loc_buffer = temp_buffer; (text type에 들어갈 자료들)
>> data.loc_bufsize = len(temp_buffer); ( 자료들의 최대길이)
>> data.loc_size = len(temp_buffer) + 1; ( 자료들의 최대길이)
>> ....
>> EXEC SQL insert into test ( a ) values (:data);
>> ...
>>
>> 이런식으로 처리하면 temp_buffer에 저장된 많은 내용의 데이타가 저장되더군요
>> 그런데 문제는 temp_buffer의 길이가 너무 클 경우 (테스트결과 16000byte정도) 넘어가면
>> insert가 안되더군요 . select는 크기를 알수있으니 문제없거는요.
>> blob type(text형)이 어느 정도의 양을 처리하는지 알고 싶습니다.(그 디폴트 값을 알면 파일을 그양에서
>> 자르던지 ..할수 있잖아요, 이런 내용 인포믹스 책 뒤져봐도 없더라구요
>> 예를 들어 char은 256 byte,varchar는 2048이니까 그에 맞게 할수 있는데 이런경우는 어찌해야할지..
>> 제가 blob 타입처리는 처음이라 난감합니다.
>> 아주 간단하게라도 답변 또는 참고 싸이트를 알려주시면 정말감사하겠습니다.
|