대부분의 RDBMS 데이터베이스에 이미지 파일을 저장할때는 BLOB 형식이 사용됩니다. Informix에서는 BYTE 와 BLOB 형식에 저장하는데요. Informix의 BYTE 컬럼에 저장된 이미지 파일의 확장자를 구분하는 방법을 정리해 보겠습니다. Informix의 BYTE 컬럼의 데이터는 아래와 같이 SELECT 문장으로 확인할 수 없기 때문에, TEXT 타입으로 변환한 후 조회하는 방법을 시도해봤습니다. 이렇게 하면 바이너리 파일을 텍스트 에디터로 여는 것과 같은 결과가 나오죠. 그러면 파일의 시작부분에서 확장자임을 나타내는 문자열을 확인할 수 있습니다. 이와 관련하여 제가 참조한 포스팅은 하단의 링크를 참고해주세요. $ echo "select cat_picture[1,2] from catalog..
안녕하세요. CURSOR Service Distribution의 2021년 1분기 뉴스레터에서 꽤 유용한 정보를 발견해서 정리해보려고 합니다. 참고로 CURSOR Service Distribution은 독일에서 Informix와 Db2에 대한 서비스를 제공하는 회사입니다. 인포믹스에서 테이블을 정의할 때 Smart Blob (데이터 유형 BLOB 또는 CLOB) 컬럼에 대해 스토리지 공간 (SBSpace)을 지정할 수 있습니다. 저장 위치를 지정하지 않으면 $ONCONFIG의 SBSPACE 및 SYSSBSPACE에 설정한 값이 사용되죠. 여러개의 SBSpace를 저장 위치로 지정하면 row별로 SBSpace에 분산되는데, 정확한 저장 위치를 SQL 쿼리로 확인할 수 있다고 합니다. SBSpace 위치..
안녕하세요. 인포믹스 LOB(Large Object) 타입의 데이터 크기를 계산하는 방법을 테스트해봤습니다.LOB 타입 데이터를 처리할 수 있는 함수가 없는 것으로 알고 있어서, 아래와 같이 blademgr의 번들된 모듈을 설치해서 사용했습니다. 1. 먼저 테스트용 데이터베이스 stores_demo를 아래와 같이 만듭니다. $ dbaccessdemo -log -dbspace datadbs1 2. blademgr에서 LOB 타입 데이터를 처리하기 위한 모듈을 아래와 같이 설치합니다.$ blademgrol_informix1210_1>show databasesDatabases on server: stores_demo sysadmin sysuser ol_informix1210_1>list stores_demoD..
환경MySQL : 5.0.89, AIX 6.1Informix : 11.50.FC9, AIX 6.1 MySQL의 BLOB데이터를 Informix로 마이그레이션 해보았습니다. 샘플 테이블 및 데이터 생성 (MySQL) echo "create table blotest(a int, b blob)" | mysql -u user -ppassword testecho "insert into blobtest values (2,load_file('/home/mysql/logo.gif'))" | mysql -u user -ppasswd test 처음에는 mysqldump의 --hex-blob, --tab 옵션으로 데이터를 추출하였으나 구분자가 있는 형태로 추출했을 때 hex형태로 추출되지 않아아래와 같이 OUTFILE문으로..
4KB가 넘는 이미지 데이터가 hex string으로 존재하고 이를 이미지 형태로 ORACLE 테이블에 입력하는 테스트를 해보았습니다. 먼저 아래와 같은 함수를 만듭니다. 함수는 stack overflow의 글에서 참조했습니다. 기본적인 기능만 있어 예외처리가 추가로 필요할 수 있습니다. create or replace function hextoblob(data in clob) return blob is v_blob blob; v_start pls_integer := 1; v_buffer pls_integer := 4000; begin if data is null then return '""'; end if; dbms_lob.createtemporary(v_blob, true); for i in 1..c..
- Total
- Today
- Yesterday