SELECT * INTO ownercnclrentadjEntity FROM OWNERCNCLRENTADJ
WHERE COMPANYID=iCompanyId
AND OWNERCONTRACTNO=iOwnerContractNo
AND SLIPAPPROVALCLASS='2'
AND DELETECLASS='0'
ORDER BY OWNERCNCLADJBRANCHNO DESC; --这句sql如果没有查询到数据就会抛异常,执行不下去了,如何解决
IF SQL%NOTFOUND THEN
oEndStatus:=Log_Util.BATCHENDSTATUS_ERROR_ABORT;
mLogger.WRITE_LOG('COMPANYID:'|| iCompanyId || 'OWNERCONTRACTNO:' || iOwnerContractNo,
'EBLS0001',
iOwnerContractNo,
oEndStatus);
RAISE ownercnclrentadjNotFound;
ELSE
wOwnerCancellationDate:=ownercnclrentadjEntity.CANCELLATIONDATE;
END IF;
WHERE COMPANYID=iCompanyId
AND OWNERCONTRACTNO=iOwnerContractNo
AND SLIPAPPROVALCLASS='2'
AND DELETECLASS='0'
ORDER BY OWNERCNCLADJBRANCHNO DESC; --这句sql如果没有查询到数据就会抛异常,执行不下去了,如何解决
IF SQL%NOTFOUND THEN
oEndStatus:=Log_Util.BATCHENDSTATUS_ERROR_ABORT;
mLogger.WRITE_LOG('COMPANYID:'|| iCompanyId || 'OWNERCONTRACTNO:' || iOwnerContractNo,
'EBLS0001',
iOwnerContractNo,
oEndStatus);
RAISE ownercnclrentadjNotFound;
ELSE
wOwnerCancellationDate:=ownercnclrentadjEntity.CANCELLATIONDATE;
END IF;
这句抛出的异常,而是select into语句的时候如没有返回行会抛出no_data_found异常,抛出异常之后,他后面的语句就没有执行的机会了。
“我有些地方没查询到数据是不会报异常的”是否也是select into?