create or replace package P_Package as
function disjoint(p1 varchar,p2 varchar) return binary_integer;
function contain (p varchar,line varchar) return binary_integer;
end P_Package;
create or replace package body P_Package as
function disjoint(p1 varchar,p2 varchar)
return binary_integer --提示参数中缺少形式参数
is
LANGUAGE C NAME "disjoint"
library T_P
parameters(s1 string,s2 string,return int);
--end disjoint;
function contain(p varchar,line varchar)
return binary_integer ----提示参数中缺少形式参数
is
LANGUAGE C NAME "contain"
library T_P
parameters(s1 string,s2 string,return int);
--end contain;
end P_Package;
请问上面的问题该怎么解决呢?谢谢!
create or replace package body P_Package as
function disjoint(p1 varchar,p2 varchar)
return binary_integer --提示参数中缺少形式参数
is
begin
LANGUAGE C NAME "disjoint"
library T_P
parameters(s1 string,s2 string,return int);
end disjoint;
function contain(p varchar,line varchar)
return binary_integer ----提示参数中缺少形式参数
is
begin
LANGUAGE C NAME "contain"
library T_P
parameters(s1 string,s2 string,return int);
end contain; end P_Package; 试试看!
Line: 8
Text: end disjoint;Error: PLS-00103: 出现符号 "FUNCTION"
Line: 9
Text: function contain(p varchar,line varchar)Error: PLS-00103: 出现符号 "VARCHAR"在需要下列之一时:
.(),*@%&|=-+</>atinis
modnotrangerem=>..<an exponent (**)><> or != or ~=>=<=<>and
orlikebetween||
Line: 9
Text: function contain(p varchar,line varchar)Error: PLS-00103: 出现符号 "END"在需要下列之一时:
beginfunctionpackagepragma
proceduresubtypetypeuse<an identifier>
<a double-quoted delimited-identifier>formcurrentcursor
符号 "begin在 "END" 继续之前已插入。
Line: 15
Text: end contain;回复二楼兄弟,语法没有错,我曾写了个这样的测试程序是可以运行的:create or replace package s_package as
function t_add(a varchar) RETURN binary_integer;
end s_package;
create or replace package body s_package as
function t_add(a varchar) RETURN binary_integer is
LANGUAGE C NAME "test"
LIBRARY MYLIB
PARAMETERS (a string,
RETURN int );
end s_package;我按你写的试了,还是有编译错误,该怎么解决呢?
function disjoint(s1 varchar,s2 varchar) return binary_integer;
function contain (s1 varchar,s2 varchar) return binary_integer;
end P_Package;
/create or replace package body P_Package as
function disjoint(s1 varchar,s2 varchar)
return binary_integer
is
LANGUAGE C NAME "disjoint"
library T_P
parameters(s1 string,s2 string,return int); function contain(s1 varchar,s2 varchar)
return binary_integer ----提示参数中缺少形式参数
is
LANGUAGE C NAME "contain"
library T_P
parameters(s1 string,s2 string,return int); end P_Package;parameters中的参数应和过程参数一致