postgresql建立刪除分區表

來源:互聯網
上載者:User

  常經常添加分區表,和清理分區表,很簡單的2個函數 --添加分區表 CREATE OR REPLACE FUNCTION create_table(table_name character varying,table_num integer) RETURNS void LANGUAGE plpgsql AS $function$ declare

  v_date char(8); v_tablename varchar(64);

  begin for i in 0..table_num loop

  v_date :=to_char(current_date + i,'YYYYMMDD'); v_tablename := table_name ||'_'|| v_date;

  execute 'create table ' || v_tablename ||'(like '||table_name||' including all) inherits('||table_name||')'; execute 'grant select on ' || v_tablename || ' to dwetl';

  end loop; end $function$;

  --刪除分區表 CREATE OR REPLACE FUNCTION drop_table(table_name character varying,table_num integer) RETURNS void LANGUAGE plpgsql AS $function$ declare

  v_date char(8); v_tablename varchar(64);

  begin for i in 0..table_num loop

  v_date :=to_char(current_date + i,'YYYYMMDD'); v_tablename := table_name ||'_'|| v_date;

  execute 'drop table ' || v_tablename;

  end loop; end $function$;

  --執行函數 select create_table('table_name',table_num); select drop_table('table_name',table_num); --刪除函數 drop FUNCTION create_table(table_name character varying,table_num integer); #必須寫上輸入參數 drop FUNCTION drop_table(table_name character varying,table_num integer);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.