我想显示来自不同表的项目,我正在使用POST-QUERY
触发器:
SELECT Stock_code
INTO :exchange.stockcode
FROM Exchange_Stock
WHERE Exchange_code = :exchange.Exchange_code;
它想出了FRM-40735
,ORA-01422
但它显示了一些记录(不是全部),我不知道出了什么问题
我想显示来自不同表的项目,我正在使用POST-QUERY
触发器:
SELECT Stock_code
INTO :exchange.stockcode
FROM Exchange_Stock
WHERE Exchange_code = :exchange.Exchange_code;
它想出了FRM-40735
,ORA-01422
但它显示了一些记录(不是全部),我不知道出了什么问题
很可能在POST-QUERY
填充了具有多条记录的基于表的块的字段之后触发触发器。显然Exchange_code
值在整个表数据中不是唯一的,而一个SELECT .. INTO .. FROM ...
子句只能带来一条记录。
:exchange.Exchange_code
因此,您可以尝试过滤掉结果,以便为每个参数字段组合(例如&:exchange.code_order
而不是条件内的唯一:exchange.Exchange_code
字段)获取单行WHERE
:
SELECT Stock_code
INTO :exchange.stockcode
FROM Exchange_Stock
WHERE Exchange_code = :exchange.Exchange_code
AND code_order = :exchange.code_order;
重要的是从查询匹配数据块中的每条记录中获取单行。如果尚未提供此条件,您仍然可以向查询添加更多条件。