【发布时间】:2016-03-27 08:16:29
【问题描述】:
我需要通过 DBLink 插入大约 50 个包含大量数据的表。我一般用语句
insert into <table_name>
select * from <table_name>@DBLink
在某些情况下,插入时间过长。此处可以使用哪些有用的数据库提示来加快处理速度?
【问题讨论】:
标签: oracle hints query-hints
我需要通过 DBLink 插入大约 50 个包含大量数据的表。我一般用语句
insert into <table_name>
select * from <table_name>@DBLink
在某些情况下,插入时间过长。此处可以使用哪些有用的数据库提示来加快处理速度?
【问题讨论】:
标签: oracle hints query-hints
你可以使用ORACLE'sAPPEND提示
APPEND 提示告诉优化器执行直接路径插入,这提高了 INSERT .. SELECT 操作的性能,原因有很多:
数据被附加到表的末尾,而不是尝试使用表中现有的可用空间。
数据直接写入数据文件,绕过缓冲区缓存。
不考虑参照完整性约束。 *
不执行触发处理。 *
语法:
INSERT /* + APPEND */ INTO YourTable
SELECT * FROM YourTable@DBLink
【讨论】: