Oracle Package包的定义及使用

Oracle的package包主要用于组织归类相关的函数及存储过程,包的创建包括两分部:包的定义、包体的定义。

包的定义主要包括包名和包内函数、存储过程的声明,相当于API接口定义;

包体主要是包内各函数和存储过程的实现;

创建包体前必须先创建包。


包的定义:

CREATE OR REPLACE PACKAGE vastcm_utils IS
  FUNCTION is_table_exists( table_name_to_check  VARCHAR2) RETURN BOOLEAN;
END;

包体的定义:

CREATE OR REPLACE PACKAGE BODY vastcm_utils IS
  FUNCTION is_table_exists( table_name_to_check  VARCHAR2)
  RETURN BOOLEAN IS
      row_count  NUMBER;
      is_exists  BOOLEAN;
  BEGIN
      SELECT count(*) INTO row_count
      FROM dual
      WHERE EXISTS
            ( SELECT * FROM user_tables WHERE table_name = upper(table_name_to_check) );
      IF row_count = 0 THEN
        is_exists := FALSE;
      ELSE
        is_exists := TRUE;
      END IF;
      RETURN is_exists;
  END;
END;

包内函数的调用:

BEGIN 
  IF vastcm_utils.is_table_exists('t_pm_user') THEN
    DBMS_OUTPUT.PUT_LINE('exists.');
  ELSE
    DBMS_OUTPUT.PUT_LINE('not exists.'); 
  END IF;
END;

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值