프로시저 내부에서 SELECT 123 INTO VAL1 FROM DUMMY;
사용해서 셀렉트 결과문으로 변수값에 담는 경우가 필요한데 이 경우
시노님을 생성해야 사용이 가능함
db/ 폴더 밑에 .hdbsynoym 확장자로 생성
{
"DUMMY": {
"target": {
"object": "DUMMY",
"schema": "SYS"
}
}
}
내부에 DUMMY를 정의 후 사용
SELECT LPAD(CM_005_SEQ.currval, 12, '0') INTO A2 FROM DUMMY;
db/ 폴더 밑에 .hdbsequence 확장자로 생성
SEQUENCE CM_005_SEQ
RESET BY
SELECT IFNULL(MAX(CM_005_ID), 0) + 1 FROM GILRO_GA_CM_005
시퀀스를 생성 후 프로시저에서 사용
INSERT INTO GILRO_GA_CM_005 VALUES(LPAD(CM_005_SEQ.nextval, 12, '0') ,NULL, :A1 ,:STARTDATE,:ENDDATE,NULL, NULL,NULL,CURRENT_TIMESTAMP, NULL, NULL);
db/ 폴더 밑에 .hdbfunction 확장자로 생성
FUNCTION "GILRO_GA_CODE"( CODE NVARCHAR(12) )
RETURNS RESULT NVARCHAR(50)
LANGUAGE SQLSCRIPT
SQL SECURITY INVOKER AS
BEGIN
SELECT CODE_NAME
INTO RESULT
FROM GILRO_GA_CD_002
WHERE BP_CD_002_ID LIKE :CODE;
END;
파라미터를 받고 로직을 수행해서 결과 값을 반환해줌
프로시저와 차이점은 데이터를 읽고 쓰지는 못하는 점이다.