【发布时间】:2016-09-10 18:54:14
【问题描述】:
我正在尝试将插入行返回到 PL/SQL 中的 ROWTYPE 表中,但出现错误:
ORA-00936:缺少表达式。
包头中的表类型声明:
TYPE t_retourResult IS TABLE OF RESULTATS%ROWTYPE;
以及插入包体时出错:
PROCEDURE EncoderResultats(p_tResultats IN t_resultats, p_tAjoutes OUT t_retourResult, p_tErreurs OUT t_erreur)
IS
ExceptTResultats EXCEPTION;
i INTEGER;
BEGIN
IF(p_tResultats.COUNT = 0) THEN RAISE ExceptTResultats; END IF;
FORALL i IN INDICES OF p_tResultats SAVE EXCEPTIONS
INSERT INTO RESULATS VALUES p_tResultats(i) RETURNING * BULK COLLECT INTO p_tAjoutes;
COMMIT;
EXCEPTION
WHEN ExceptTResultats THEN RAISE_APPLICATION_ERROR(-20006,'Le tableau est vide, aucun resultat à ajouter');
WHEN OTHERS THEN RAISE;
END EncoderResultats;
【问题讨论】: