select string_to_array ('192.168.123.123','.')
result > {192,168,123,123}
는 문제 없이 실행되네요.
select string_to_array (ip, '.') from login_ip
는 에러가 발생합니다. can't serialize ... 어쩌고 하는 에러요.
이거 어떻게 해결해야 할까요? 그냥 생짜로..?
==============================================
착각했었네요. 이래저래 테스트 하다보니...
select string_to_array (ip, '.') from login_ip 도 정상입니다만...
varchar 형식 ip를 long 형식으로 변경하여 IP를 비교하는 함수를 만들려고 합니다.
postgresql 은 instr 함수가 없어서 string_to_array 를 이용해서 간단하게 해결하려고 하는데요.
IP를 클래스 단위로 분해하는 부분에서 부터 에러가 나니...
create function ip2long (in varchar) return as record
$BODY$
select string_to_array ($1, '.')
$BODY$
EMD;
LANGUAGE 'SQL'
select ip2long('192.168.123.123','.') 은 정상
select ip2long (user_ip) from login_ip 는 에러 발생.
|