>
> Create table department(
> divide_name varchar(50) not null,
> explainable text,
> PRIMARY KEY(divide_name)
> );
>
> 위의 스키마를 생성하고
>
> insert into department values('1','111');
>
> 로 인서트 쿼리를 해보았더니
>
> 617: 이 구문에는 BLOB 데이터 타입을 사용하여야 합니다.
>
> 메세지가 나옵니다..
>
> text형을 blob로 바꾸라는 소린가요?
>
> 도무지 informix는 넘 밉다잉.. 알려주세요1!!
>
안녕하세요.
인포믹스의 자료형중에서 text, byte, clob, blob에 해당하는
자료형들은 직접 SQL문으로 데이터를 insert나 update할 수 없습니다.
만약 현재 사용하고 있는 제품의 버전이 9.0 이상이고
전체 크기가 2048 bytes를 넘지 않는다면
explainable lvarchar,
로 선언하여 사용하시면 됩니다.
text 자료형에 데이터를 insert나 업데이트를 하기 위해서는
먼저 저장할 데이터를 텍스트 파일로 만든 후
sample.unl
a|test1
b|test2
load from sample.sql insrt into department;
형태로 load를 하거나 PHP나 ESQL/C 어플리케이션을 작성하여
입력해야 합니다.
PHP의 경우는 아래의 PHP 메뉴얼의 예제와 같이
입력을 할 수 있습니다.
// create blob id’s for a byte and text column
$textid = ifx_create_blob(0, 0, "Text column in memory");
$byteid = ifx_create_blob(1, 0, "Byte column in memory");
// store blob id’s in a blobid array
$blobidarray[] = $textid;
$blobidarray[] = $byteid;
// launch query
$query = "insert into catalog (stock_num, manu_code, " .
"cat_descr,cat_picture) values(1,’HRO’,?,?)";
$res_id = ifx_query($query, $conn_id, $blobidarray);
if (! $res_id) {
... error ...
}
// free result id
ifx_free_result($res_id);
그럼.
|