用scott/tiger登录,创建包和包体,代码如下:Create Or Replace Package test Is
function f() return number;
End test;create or replace package body test is
function f() return number
is
begin
return -1;
end;
end test;
包头创建成功,但是在创建包体时,出现如下错误:
ORA-00604: 递归SQL层1出现错误
ORA-01401: 插入的值对于列过大
ORA-06512: 在line 2
function f() return number;
End test;create or replace package body test is
function f() return number
is
begin
return -1;
end;
end test;
包头创建成功,但是在创建包体时,出现如下错误:
ORA-00604: 递归SQL层1出现错误
ORA-01401: 插入的值对于列过大
ORA-06512: 在line 2
改成:
function f return number;
....
-- 没有括号
SQL> CREATE OR REPLACE PACKAGE TEST IS
2 FUNCTION F RETURN NUMBER;
3 END TEST;
4 /Package createdSQL> CREATE OR REPLACE PACKAGE BODY TEST IS
2 FUNCTION F RETURN NUMBER
3 IS
4 BEGIN
5 RETURN -1;
6 END;
7 END TEST;
8 /Package body created-- 带参数
SQL> CREATE OR REPLACE PACKAGE TEST IS
2 FUNCTION F(SID NUMBER) RETURN NUMBER;
3 END TEST;
4 /Package createdSQL> CREATE OR REPLACE PACKAGE BODY TEST IS
2 FUNCTION F(SID NUMBER) RETURN NUMBER
3 IS
4 BEGIN
5 RETURN -1;
6 END;
7 END TEST;
8 /Package body created
Create Or Replace Package test Is
function f return number;
End test; create or replace package body test is
function f return number
is
begin
return -1;
end;
end test;
http://liangheatheat.spaces.live.com/blog/cns!927c1e647bbc72c3!367.entry
function f return number;
end;
/
create or replace package body test is
function f return number
is
begin
return -1;
end f;
end;
/这样写就对了