在优化 SQL中使用 SQL 重写模式包含两个步骤。第一步,SQL Optimizer 为您的原始 SQL 生成语义等价但是拥有不同执行计划的替代语句。显示每个所生成语句替代项的 Oracle 成本估计值。第二步,SQL Optimizer 执行语句替代项,以测试每条语句的性能。这就提供了执行时间和运行时间统计,让您可以为您的数据库环境找到最佳的 SQL 语句。
提示:Oracle 成本仅提供执行 SQL 语句的资源使用量估计值。由于成本较高的语句可能性能更好,因此您应当测试所生成的语句替代项,以确定适合您的数据库环境的最佳语句。
在主窗口中选择优化 SQL选项卡。
从 优化 SQL起始页选择 SQL 重写。
注:如果没有显示起始页,单击 旁边的箭头,然后选择新建 SQL 重写会话。
在“替代项详细信息”窗格中输入一条 SQL 语句。
单击 为您的 SQL 语句检索执行计划。会显示“选择连接和模式”窗口。
单击 以优化 SQL 语句。
SQL Optimizer 完成 SQL 重写进程,以将您的原始 SQL 语句与生成的语句替代项进行比较之后,单击 。
如要测试 SQL Optimizer 生成的替代项,可以测试运行一个或多个选中的替代项以获得实际的执行统计。此功能不会影响网络流量,因为 SQL Optimizer 可以提供这些统计,而无需从数据库服务器检索结果集。此外,在使用 SELECT、SELECT INTO、INSERT、DELETE 及 UPDATE 语句时数据一致性得到了保证,因为这些语句在一个执行后回滚的事务中运行。
要测试一条 SQL 语句替代项
“测试运行设置”对话框打开。选择要对此测试运行应用的条件。您可以在“使用与症状”页面上回答问题,以允许SQL Optimizer为您确定设置。或者您可以单击页面底部的自定义测试运行设置链接,手动指定测试运行设置。
提示:您可以单击 并选择优化 SQL | 测试运行,为部分测试运行设置选项指定默认值。
复查“替代项”窗格中的执行统计。
在 优化 SQL中使用计划控制模式 分为两个步骤。第一步,SQL Optimizer 在不更改源代码的情况下,为您的 SQL 语句生成执行计划替代项。接着您可以执行此计划替代项以检索运行时间统计,并确认适合您数据库环境的最佳替代项。第二步,您可以使用计划控制模式,将执行计划当作 Oracle 计划基准部署到管理计划模块。
注:此主题主要介绍您可能不熟悉的信息。不包括所有步骤和字段描述。
从 优化 SQL起始页选择计划控制。
注:如果没有显示起始页,单击 旁边的箭头,然后选择新建计划控制会话。
在“原始 SQL”窗格中输入一条 SQL 语句。
提示:如果您的 SQL 语句源自 PL/SQL 块,则选中此 SQL 包含在 PL/SQL 块内复选框。选中此复选框确保了您创建的基准的 SQL 文本匹配数据库中的 SQL 文本。
单击 为您的 SQL 语句生成替代执行计划。会显示“选择连接和模式”窗口。
单击 执行所有替代执行计划,以检索运行时间统计。
复查“计划”窗格中的运行时间统计,以确认最佳计划替代项。
单击 .
复查以下内容以获取附加信息:
部署 | 描述 |
---|---|
选择一个要部署的计划 |
单击 |
性能比较 |
使用此选项比较所选计划与原始计划的性能。 |
将计划标记为 |
复查以下内容以获取附加信息:
|
计划名称 |
输入计划的名称。 |
描述 |
输入此计划的描述。 |
SQL Optimizer 分析一条 SQL 语句的语法、数据库表之间的关系及数据的选择性之后,会识别出该条 SQL 语句的索引替代项需要用到的各个列。然后 SQL Optimizer 将确认的索引替代项合并到索引集内。
要生成一个索引替代项
在主菜单中选择优化 SQL选项卡。
在“替代项详细信息”窗格中输入一条 SQL 语句。
单击 。会显示“选择连接和模式”窗口。
选择要使用的连接和模式。
在“SQL 信息窗格”中选中“索引详细信息”可查看索引生成信息。
要测试索引,在“替代项”窗格中选中索引,然后单击 。
注:“测试运行”功能可让您测试 SQL Optimizer 生成的一个索引集。此功能会在数据库上物理创建索引、运行 SQL 语句、检索执行统计和删除索引。由于此进程会物理创建数据库索引,可能会影响其他 SQL 语句的性能。
© 2025 Quest Software Inc. ALL RIGHTS RESERVED. 使用条款 隐私 Cookie Preference Center