小编val*_*don的帖子

ORACLE存储过程返回太多行

我正在尝试在Oracle中编写一个存储过程(我已经讨厌了(除此之外))当执行存储过程时我被告知我已经检索到太多行(例如,超过1),但是当通过文本查询数据,它清楚地告诉我只有一行符合这个标准.

create or replace
PROCEDURE GETADDRESSCOORDS 
(
  HOUSE IN VARCHAR2
, STREET IN VARCHAR2
, X OUT NUMBER
, Y OUT NUMBER
) AS
BEGIN
SELECT X_COORD, Y_COORD INTO X,Y FROM MASTER_ADDRESS
 WHERE HOUSE=HOUSE AND STR_NAME=STREET AND PRE_DIR IS NULL;
END GETADDRESSCOORDS;

运行时,我收到此错误信息:

SQL> execute getaddresscoords('1550', 'BEDFORD', :X, :Y)
BEGIN getaddresscoords('1550', 'BEDFORD', :X, :Y); END;

*
ERROR at line 1:
ORA-01422: exact fetch returns more than requested number of rows
ORA-06512: at "TAXLOTS.GETADDRESSCOORDS", line 9
ORA-06512: at line 1

所以我有太多行...但是当我执行这个时: …

oracle stored-procedures

3
推荐指数
1
解决办法
1991
查看次数

标签 统计

oracle ×1

stored-procedures ×1