FOR i IN 1..t_label.COUNT LOOP
t_label(i).is_new := 'Y';
t_label(i).modified_date := SYSDATE;
--<-- Work around for bulk insert error
INSERT INTO fabric_label_last
VALUES t_label(i);
-->
END LOOP;
-- Causes ORA-01461 exception
--FORALL i IN 1..t_label.COUNT SAVE EXCEPTIONS
--INSERT INTO fabric_label_last
--VALUES t_label(i);
每条记录插入有效,但如果我尝试使用批量插入,我会得到 ORA-01461 异常。
以下是表的列定义:
VENDOR_CODE VARCHAR2(4 BYTE) NOT NULL,
OPTION_VALUE VARCHAR2(8 BYTE) NOT NULL,
OPTION_TYPE VARCHAR2(3 BYTE) NOT NULL,
GRADE VARCHAR2(30 BYTE),
FABRIC_TYPE VARCHAR2(5 BYTE),
DESCRIPTION VARCHAR2(40 BYTE),
RACK_ID VARCHAR2(5 BYTE),
IS_NEW VARCHAR2(1 BYTE) NOT NULL,
IS_DROPPED VARCHAR2(1 BYTE) NOT NULL,
MODIFIED_DATE DATE NOT NULL
“t_label”是行类型 fabric_label_last 的关联数组。