现在一个包编译的时候,
如果加上
select min(FRECVED) into vCount from TALCJOBRCVBIN
where FJOBID = piJobID and FARTICLE = piArticle;
这句话,
那么,就会编译不过去,具体表现就是停在那儿不动,然后这个包被锁住,别人也无法使用。但是我把这句话注释掉以后,
就完全可以编译过去了。但是这条语句放到别的包里就没有任何问题,这个表在这个包里就只用了这一次哪位知道这是什么问题啊郁闷死了
如果加上
select min(FRECVED) into vCount from TALCJOBRCVBIN
where FJOBID = piJobID and FARTICLE = piArticle;
这句话,
那么,就会编译不过去,具体表现就是停在那儿不动,然后这个包被锁住,别人也无法使用。但是我把这句话注释掉以后,
就完全可以编译过去了。但是这条语句放到别的包里就没有任何问题,这个表在这个包里就只用了这一次哪位知道这是什么问题啊郁闷死了
解决方案 »
- 关于oracle连接查询执行等待时间太长的问题(优化sql)
- oracle内存排序问题
- oracle中游标可以带参数吗?
- 数据查询 数据字段分割比较
- 一道及其变态的Oracle期末考试题,唯有高手能解答呀!!!
- 这样的oracle 语句怎么写?
- 装完WIN2000操作系统最新漏洞补丁(Windows2000-KB835732-x86-CHS.EXE后 ,oracleservice就再也启动不了了?
- sqlplus和pl/sql developer的问题!!!头疼啊!!!
- 急的想吐血自杀!
- 初学者是学ORACLE9I还是ORACLE8I???真不知道从何下手,大家说说意见??
- orcle中能够查询出一条记录的哪个会话或用户写入的吗?最好还能查到是哪个客户端操作的。谢谢。100相送
- oracle查询的问题?
piJobID in varchar2,
piArticle in integer,
poErrMsg out varchar2
) return integer
is
vCount integer;
vArticleCode tarticle.fcode%type;
begin
---读取货品Gid
select max(fcode) into vArticleCode
from tarticle
where fgid = piArticle;
if vArticleCode is null then
poErrMsg := '123456';
return(1);
end if;
/* select min(FRECVED) into vCount from TALCJOBRCVBIN
where FJOBID = piJobID and FARTICLE = piArticle;*/
--已经收货完成,不能再次收货
if vCount is null then
select '配货作业' || piArticle || '中不存在货品' || vArticleCode into poErrMsg
from TARTICLE where FGID = piArticle;
return(1);
elsif vCount in (2, 3) then
select '配货作业' || piArticle || '中货品' || vArticleCode || '已经收货完成,不能再次收货' into poErrMsg
from TARTICLE where FGID = piArticle;
return(1);
end if;
return(0);
end HadDirectStkin;
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
PL/SQL Release 9.2.0.1.0 - Production
CORE 9.2.0.1.0 ProductionTNS for 32-bit Windows: Version 9.2.0.1.0 - Production
NLSRTL Version 9.2.0.1.0 - Production编译通过
测试通过
select min(FRECVED) into vCount from TALCJOBRCVBIN
where FJOBID = piJobID and FARTICLE = piArticle;
这条语句的相关内容放到其他包里,做一个函数,
这里调用这个函数,
试试看,有可能就行了。