获取高斯数据库对应属主下所有表的建表语句的存储过程

获取高斯数据库对应属主下所有表的建表语句的存储过程

  1. 取高斯数据库对应属主下所有表的建表语句
--获取高斯数据库对应属主下所有表的建表语句
--参数:属主名
create or replace FUNCTION ypg_get_tabledef(i_owner varchar2)
 returns void
 LANGUAGE plpgsql
 NOT FENCED NOT SHIPPABLE
as $$
declare
  r_owner varchar2(100) := '';
  r_table varchar2(100) := '';
  owner_table varchar2(100) := '';
  v_count       number(1);
begin
  --create table if not exists ypg_tabledef (t_owner varchar2, t_table varchar2, t_def varchar2);
  --清空目标表
  TRUNCATE table ypg_tabledef;
  --获取该属主下表名
  for r in (select tableowner,tablename from pg_tables where tableowner =i_owner) loop 
    r_owner := trim(lower(r.tableowner));
    r_table := trim(lower(r.tablename));
    owner_table :=  r_owner || '.' || r_table;
    dbms_output.put_line(owner_table);
    begin
	--查询是否存在该表
    select count(1) into v_count from pg_class where relname=r_table;
    if v_count > 0 then
      dbms_output.put_line(&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值