database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 5144 게시물 읽기
No. 5144
참고 7.4.x intarray 모듈과 배열 = 연산 문제
작성자
김상기(ioseph)
작성일
2004-01-07 11:03
조회수
1,754

7.4.x 에서는 이상하게, intarray 모듈을 설치하고 나면, 정수형 배열 자료형에서 = (equal) 연산을 할 수 없네요.

intarray 설치 스크립트를 보니, 일단 = 연산을 빼고는 PostgreSQL 내장 = 연산을 사용하겠다는 소리같은데, 문제는 다 설치하고 나면

ERROR:  cache lookup failed for function 0

(이 연산자에 대한 해당 함수를 찾을 수 없다고 나옵니다)

 

해결방법은 일단 돌아가는 방법 PostgreSQL 내장 배열 연산용 함수인 array_eq() 함수를 직접 사용하는 방법으로 풀 수 있습니다.

 

select * from table where array_column = '{}' (실행되어야하는데, 실행되지 않는 구문)

이런 구문을

select * from table where array_eq(array_column, '{}') = 't'

이런식으로 변경되어야할 듯싶습니다.

 

아무튼 관심 분께서는 직접 한번 살펴보시고, 이놈 문제 해결 좀 해주세요.

이 글에 대한 댓글이 총 1건 있습니다.

_int.sql 스크립트에서

<> 연산자 정의가 빠지고,

CREATE OPERATOR CLASS gist__int_ops

정의에서

OPERATOR        6       =  RECHECK,

부분이,

OPERATOR        6       = (anyarray, anyarray)  RECHECK,

형태로 자료형 정의를 강제로 해주어야 정상적으로 작동하네요.

 

이놈은 intarray 개발진에게 알려주어야할듯.

 

이것에 대한 패치 파일은 files 에 등록해 두었습니다.

김상기(ioseph)님이 2004-01-07 12:31에 작성한 댓글입니다.
이 댓글은 2004-01-07 13:31에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
5148그놈의 DB 베이스 파일시스템 ㅎㅎ [1]
신기배
2004-01-08
1660
5147책을 쓸려고 하는데.. [5]
이상호
2004-01-08
2836
5146윈도우에서 native 접속을 위해 libpq.dll을 컴파일 하려고 하는데... [2]
이민철
2004-01-07
2047
5144참고 7.4.x intarray 모듈과 배열 = 연산 문제 [1]
김상기
2004-01-07
1754
5143pgsql.so 나 pgsql.dll 이 필요한데요.. ㅠㅠ [1]
하늘같이
2004-01-06
1731
51427.4.x 대로 자료 옮길 때의 참고 [1]
김상기
2004-01-06
1760
5141fmgr_info: function 1952435: cache lookup failed [1]
이은주
2004-01-05
1953
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다