PLSQL中的包语法

时间:2014-08-15 09:03:33

标签: sql oracle plsql

我发现以下代码假定为PLSQL:

package Z                                                                                                                                                                      
    V_LOT   NUMBER(17,2);                
    ...
end Z;

然而,从oracle文档来看,它似乎是" package"声明需要始终有一个"创建"在"包之前#34;字。

这段代码是否正确?

感谢

3 个答案:

答案 0 :(得分:2)

根据documentationCREATE语句是必需的,因此您的代码不正确。它必须是这样的:

create package z
is
  V_LOT   NUMBER(17,2);
  ...
end z;

答案 1 :(得分:1)

您可以使用以下语法创建包

'创建包'或'创建或替换包'

答案 2 :(得分:0)

CREATE PACKAGE cust_sal AS
   PROCEDURE find_sal(c_id customers.id%type);
END cust_sal;


CREATE OR REPLACE PACKAGE BODY cust_sal AS
   PROCEDURE find_sal(c_id customers.id%TYPE) IS
       c_sal customers.salary%TYPE;
   BEGIN
      SELECT salary INTO c_sal
      FROM customers
      WHERE id = c_id;
      dbms_output.put_line('Salary: '|| c_sal);
   END find_sal;
END cust_sal;