문제

20 초 이상 행을 삭제하기 위해 Informix에서 다음을 수행하고 있습니다.

delete from sometable
where someDateColumn < (current - interval (20) second to second);

그러나 저장된 절차에서 간격을 구성 할 수있게 만들고 싶지만 할 수 없습니다.

CREATE PROCEDURE i_hate_informix (prm_timeframe int)
    DELETE   sometable
    WHERE    someDateColumn < (current - interval (prm_timeframe) second to second);
END PROCEDURE;
도움이 되었습니까?

해결책

나는 대답을 직접 찾았다.

간격은 변수로 동적으로 정의 할 수 없습니다. 그러나 "단위 두 번째"를 사용할 수 있으므로 내 절차가

CREATE PROCEDURE i_hate_informix (prm_timeframe int)
   DELETE   sometable
   WHERE    someDateColumn < (current - prm_timeframe units second);
END PROCEDURE;
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top