Azure PostgreSQL 작업중 기타 서비스(DataFactory) 등에서 호출하여 사용할 목적으로 Truncate Table을 

하는 프로시저가 필요함에 따라 프로시저를 만들어 보았다. 실제로 Azure Pg라서 그런지는 모르겠지만 몇몇

방식은 에러가 발생하였고, 세부적인 여러 기능은 필요시마다 해당 블로그 글을 업데이트 할예정이며, 현재는 

필요한 프로시저 생성문만 정리 해본다.

 

아래 문장의 경우 TRUCATE TABLE 처리를 하며, 파라미터 값에 따라 유동적으로 스키마,테이블명이 바껴야한다.

이럴경우 DECLARE 로 변수를 선언하여, SQL쿼리문장을 담은 후 조합된 해당 문장을 EXCUTE하여야 한다.


CREATE PROCEDURE "ods"."sp_truncate_table" (schema_name varchar(15), tbl_name varchar(50))
LANGUAGE plpgsql
AS $$
DECLARE EXEC_SQL text;
BEGIN
    EXEC_SQL = 'TRUNCATE TABLE ' || schema_name || '.'|| tbl_name ;
    EXECUTE EXEC_SQL;
END;
$$  


/*CALL ods.sp_truncate_table ('[스키마명]','[테이블명]')*/
CALL ods.sp_truncate_table ('ods','test')
 
 

#참고 : PostgreSQL: Documentation: 15: CREATE PROCEDURE

 

 

+ Recent posts