안녕하세요
create function chk_query(varchar) RETURNS INTEGER as'
DECLARE
str varchar(30);
tmp RECORD;
BEGIN
select into tmp * from dosuban where uid=str;
IF NOT FOUND THEN
insert into dosuban(uid) values(str);
return 1;
END IF;
return 0;
END;'
LANGUAGE 'plpgsql';
함수 자체는 만들어 지는데요
select chk_query('aaaa') 의 결과 1을 리턴하구요
그런데
select * from dosuban 의 결과를 확인해보면
null값이 들어가 있습니다
인자로 준 aaaa란걸 인식을 못하는것 같은데요
글을 검색해보니까
str ALIAS FOR;
이런 식으로 값을 주는 방법도 있던데 이경우는 함수는 만들어지나 실행하면
NOTICE: plpgsql: ERROR during compile of chk_query near line 2
ERROR: parser: parse error at or near ";"
이런 에러를 출력합니다
str을 $str로 써도 에러나구요
어떻게 해결해야 하나요..
(그리고 만들어둔 사용자 함수의 내용을 볼수 있는 건가요?)
|