+ -
当前位置:首页 → 问答吧 → oracle 创建一个包,很简单就一个变量

oracle 创建一个包,很简单就一个变量

时间:2011-12-15

来源:互联网

create or replace package test
is 
 v_total number;
end test;

create or replace package body test
is
  select sum(salary) into v_total from zwj.zwj_tab_test1表一;
end test;


--调用
begin
dbms_output.put_line(test.v_total);
end;

这个有什么问题啊,报无法找到正在调用的包,前面二步执行都OK的,这个到底要怎样调用啊,,

作者: ZWJ1988   发布时间: 2011-12-15

我实测没有问题:
数据:
SQL code

CREATE TABLE T54
(
    购物人 VARCHAR2(20),
    商品  VARCHAR2(20),
    数量  NUMBER(4)
);
INSERT INTO T54 VALUES('A', '', 1);
INSERT INTO T54 VALUES('B', '', 2);
INSERT INTO T54 VALUES('C', '', 5);
INSERT INTO T54 VALUES('A', '', 4);
INSERT INTO T54 VALUES('B', '', 3);
INSERT INTO T54 VALUES('D', '', 8);


包规范:
SQL code

CREATE OR REPLACE PACKAGE PackageTest IS  
    v_total NUMBER;
END PackageTest;



包体:
SQL code

CREATE OR REPLACE PACKAGE BODY PackageTest IS  

BEGIN
    SELECT SUM(数量) into v_total FROM T54;
END PackageTest;



测试PL/SQL块
SQL code

declare 

begin
  DBMS_OUTPUT.PUT_LINE(PackageTest.v_total);  
end;



输出结果:23

作者: LuiseRADL   发布时间: 2011-12-15

热门下载

更多