暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle ALTER会话启用并行DML

askTom 2017-03-27
355

问题描述

嗨,

我需要在Archival DB上的某些表上执行MERGE语句。,语句看起来像
合并/* 并行 (tb_test,pin_max_process) */进入tb_test @ db_link tgt
使用 (选择/* 并行 (tb_test,pin_max_process) */ * 来自tb_test
其中ROWID介于v_from和v_至之间) src
开 (条件 ..)
当匹配时,然后
更新
设置 ..
当不匹配时
插入 (插入tgt)
值 (insert_src );

你能解释一下有什么区别吗-
如果我们按现在的方式执行上述合并命令 (即并行提示)?

ALTER SESSION ENABLE PARALLEL DML then execute MERGE comm和with PARALLEL hint??

专家解答

并行运行查询可以通过提示或基于表/索引定义自动完成。

但是要并行进行 * 更改 *,我们需要采取一些特殊步骤才能做到这一点。所以我们需要你告诉我们你的会议想要这样做。

因此命令:

ALTER会话启用并行DML

如果您不运行该评论,那么我们将很乐意让您指定

合并/* 并行 */

但是我们 * 不会 * 并行运行更改。我们仍然可以并行运行组成合并的 * 查询 *,但是 * 更改 * 将以串行方式完成。

因此,如果您想并行进行更改... 您需要先更改会话。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论