在oracle中批量插入
Bulk insert in oracle
我需要插入作为界面文件(文本文件)提供的大量记录。
现在正在使用这种格式插入记录。
INSERT ALL
INTO POSTAL_CODE( postal_code,desc)
VALUES('100','Coimbatore')
INTO POSTAL_CODE (postal_code,desc)
VALUES('101','Mumbai') SELECT * FROM DUAL;
但这会带来糟糕的表现。我是数据库的新手。所以请帮助我更快地插入记录。但在 db2 中,这种格式是支持的。
INSERT INTO POSTAL_CODE( postal_code,desc)
VALUES('100','Coimbatore'), (postal_code,desc),('101','Mumbai');
但是为什么oracle不支持这种类型的插入。请帮我。我坚持这个。我需要为此使用另一种解决方案,而且应该更快....
您可以更改以下语句
INSERT INTO POSTAL_CODE( postal_code,desc) VALUES('100','Coimbatore'),
(postal_code,desc),('101','Mumbai');
要像下面那样使用 UNION
,它也应该在 Oracle
中工作
INSERT INTO POSTAL_CODE( postal_code,"desc")
select '100','Coimbatore' from dual
union all
select '99','Goa' from dual
union all
select '101','Mumbai' from dual;
您应该检查 Oracle 为此目的提供的实用程序,例如 SQL*Loader
同时检查其他 SO post Loading data from a text file to a table in oracle
我需要插入作为界面文件(文本文件)提供的大量记录。 现在正在使用这种格式插入记录。
INSERT ALL
INTO POSTAL_CODE( postal_code,desc)
VALUES('100','Coimbatore')
INTO POSTAL_CODE (postal_code,desc)
VALUES('101','Mumbai') SELECT * FROM DUAL;
但这会带来糟糕的表现。我是数据库的新手。所以请帮助我更快地插入记录。但在 db2 中,这种格式是支持的。
INSERT INTO POSTAL_CODE( postal_code,desc)
VALUES('100','Coimbatore'), (postal_code,desc),('101','Mumbai');
但是为什么oracle不支持这种类型的插入。请帮我。我坚持这个。我需要为此使用另一种解决方案,而且应该更快....
您可以更改以下语句
INSERT INTO POSTAL_CODE( postal_code,desc) VALUES('100','Coimbatore'),
(postal_code,desc),('101','Mumbai');
要像下面那样使用 UNION
,它也应该在 Oracle
中工作
INSERT INTO POSTAL_CODE( postal_code,"desc")
select '100','Coimbatore' from dual
union all
select '99','Goa' from dual
union all
select '101','Mumbai' from dual;
您应该检查 Oracle 为此目的提供的实用程序,例如 SQL*Loader
同时检查其他 SO post Loading data from a text file to a table in oracle