存储过程中select语句问题
存储过程中有一select语句如下:
..................................................
SELECT a.goodsID,b.vcGoodsCode,a.goodsName,a.goodsSize,b.vcStoreCode,nvl
(a.unitMath,0),nvl(b.fManuNum,0),nvl(b.fMakeCost,0),
nvl(a.minNum,0),nvl(a.maxNum,0),nvl(a.safeNum,0)
into v_goodsID,v_goodsCode,v_goodsName,v_goodsSize,v_storecode,
v_unitMath,v_fManuNum,v_fMakeCost,
v_minNum,v_maxNum,v_safeNum
FROM TB_BASE_GOODS a,TB_MANU_ASSEMBLE b
WHERE b.vcBillID =v_vcBillID AND b.vcAspID = v_vcAspID
AND a.vcAspID = b.vcAspID
AND a.goodsCode = b.vcGoodsCode ;
...........................
在pl/sql的测试窗口中进行测试时,提示'ORA-01403:未找到数据 ',但我在pl/sql的sql窗口中执行这条select语句时是有记录的,不知道怎么回事 ?
..................................................
SELECT a.goodsID,b.vcGoodsCode,a.goodsName,a.goodsSize,b.vcStoreCode,nvl
(a.unitMath,0),nvl(b.fManuNum,0),nvl(b.fMakeCost,0),
nvl(a.minNum,0),nvl(a.maxNum,0),nvl(a.safeNum,0)
into v_goodsID,v_goodsCode,v_goodsName,v_goodsSize,v_storecode,
v_unitMath,v_fManuNum,v_fMakeCost,
v_minNum,v_maxNum,v_safeNum
FROM TB_BASE_GOODS a,TB_MANU_ASSEMBLE b
WHERE b.vcBillID =v_vcBillID AND b.vcAspID = v_vcAspID
AND a.vcAspID = b.vcAspID
AND a.goodsCode = b.vcGoodsCode ;
...........................
在pl/sql的测试窗口中进行测试时,提示'ORA-01403:未找到数据 ',但我在pl/sql的sql窗口中执行这条select语句时是有记录的,不知道怎么回事 ?
...全文
相关推荐
oracle存储过程学习经典入门
在存储过程中,select 某一字段时,后面必须紧跟 into,如果 select 整个记录,利用游标的话就另当别论了。
如何在SQL SERVER 2005存储过程中,使用循环语句
不过,要注意循环可能导致性能问题,因为它们可能会遍历大量数据或频繁地执行数据库操作。因此,优化循环和避免全表扫描是提高存储过程性能的关键。
不能在存储过程中使用的语句
由于聚合函数的特性决定了它们只能在查询语句中使用(例如,SELECT语句),因此无法在存储过程中定义。### 2.
存储过程导出表数据为添加语句
**返回结果**:最后,存储过程将生成的插入语句作为结果返回,可以是通过输出参数,或者是通过SELECT语句直接输出。
存储过程
**移植性问题**:存储过程是数据库特定的,不同数据库系统之间的存储过程语法可能不同,因此在数据库更换时可能需要重新编写。3.


