存储过程中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存储过程学习经典入门
oracle存储过程学习经典入门 非常好的 初学者必看
如何在SQL SERVER 2005存储过程中,使用循环语句
本篇文章是对如何在SQL SERVER 2005存储过程中,使用循环语句进行了详细的分析介绍,需要的朋友参考下
不能在存储过程中使用的语句
虽然在设计存储过程中,可以包含任意数据和类型的T-SQL语句,但是以上所列的语句在设计存储过程中不能使用。
存储过程导出表数据为添加语句
在SqlServer数据库的开发过程中,有时候我们需要将现有表中的数据导出成为添加语句(Sql语句)的形式,在此用存储过程即可实现,调用方式: EXEC 该存储过程名称 '表名称';
存储过程
1、什么是存储过程? 把一堆SQL语句放在一起,还可以根据条件执行不通SQL语句。 2、为什么要使用存储过程? 比单纯SQL语句执行要快。 3、存储过程优点: 1.允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。 2.如果某次操作需要执行多次SQL ,使用存储过程比单纯SQL语句执行要快。 3.可重复使用,能减少网络流量,还具有安全性。 4、存储过程缺点: 1.调试麻烦,但是用 PL/SQL Developer 调试很方便!弥补这个缺点。 2.移植问题,数据库端代码当然是与数据库相关的。但是如果是做工程型项目,基本不存在移植问题。 3.重新编译问题。 存储过程规范写法 -


