oracle存储过程中 未找到数据 异常的问题。。。

表结构如下CREATETABLETYIntegralRule(IDNUMBERNOTNULLPRIMARYKEY,RuleVARCHAR2(50)NOTNULL,Rule... 表结构如下
CREATE TABLE TYIntegralRule(
ID NUMBER NOT NULL PRIMARY KEY,
Rule VARCHAR2(50) NOT NULL,
RuleNum INT NOT NULL,
MaxPrice INT,
MinPrice INT,
MaxLog INT
);
序列create sequence seq_TYIntegralRule increment by 1 start with 1 nomaxvalue nocache;
插入数据
insert into TYIntegralRule(Id,Rule,Rulenum,maxlog) values(seq_TYIntegralRule.Nextval,'登陆',1,3);
在plsql中查询的时候,可以查询到数据。select * from TYIntegralRule

建立存储过程
create or replace procedure Login()
as
loginIntegral int;--登陆一次加多少分
begin
select rulenum into loginIntegral from TYIntegralRule;

。。。。。。。。。。。存储过程太长,省略调。。。。。。。。。
end;

在执行到该句的时候会发生异常,未找到数据。

正式写的时候我有加条件。确实不是找到太多数据,而是未找到数据。想问问大家,这个问题出在哪儿啊?
展开
 我来答
chaowei_yuwen
推荐于2016-01-11 · TA获得超过224个赞
知道答主
回答量:88
采纳率:0%
帮助的人:93.1万
展开全部
解决这个办法很多,按提问者的意思,异常肯定是no data found,这个时候你需要检查在哪出现的这个异常,如果数据不多的话,你可以用一条一条记录的去试,如果数据量大的话那直接在每个select前先选出count(*) into counts,当
counts<> 0的时候再让它执行下边的语句,或者直接存储工程中加异常处理的语句,我一般遇到这种情况都是用第一种,很简单但是很实用,屡试不爽。哈哈,如果有机会再交流交流
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c8205ed
2008-09-04
知道答主
回答量:26
采纳率:0%
帮助的人:16.5万
展开全部
怎么可能?

你确定是报 no_data_found 这个oracle异常吗

还是你的条件写的有问题 导致select into的时候报too_many_rows异常

而你的异常又全部用others?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式