`

oracle cursor_sharing强制绑定变量

阅读更多

 

alter session set cursor_sharing=force;

 可以让oracle强制bind param,来减少语句分析时间和latching的使用。

 

但是cursor_sharing要慎用。

 

 

select /*TAG*/ substr(t.t3,1,1) from ccccc t where rownum =  1;

 在这里就会降低sql的效率。

分享到:
评论

相关推荐

    SQL2BIND-VARIABLE

    如果不能使用强制绑定变量的oracle 参数 cursor_sharing=force ,也不能用触发器修改某个用户的 cursor_sharing=force 会话参数,那么这个转换程序可以帮到你(不能解决使用JAVA等编程语言,因为java使用?...

    OracleSql规则与优化

    `cursor_sharing=force`强制所有的绑定变量都被视为相同,`cursor_sharing=exact`则根据变量的实际值创建独立的游标,而`cursor_sharing=force`和`cursor_sharing=exact`之间的平衡点,可以帮助我们找到性能和资源...

    ORACLE的执行计划[参照].pdf

    在Oracle数据库系统中,执行计划是优化器...通过合理配置数据库参数、使用绑定变量和调整CURSOR_SHARING,可以显著提升SQL执行效率,减少资源消耗。在软件开发中,尤其是在处理大量数据操作时,这些技巧是不可或缺的。

    ORACLE培训SQL性能优化.pptx

    例如,不要使用数据库级的变量绑定参数 cursor_sharing 来强制绑定。另外,一些带有 > 的语句绑定变量后可能导致优化器无法正确使用索引。 ORACLE 优化器模式是 SQL 语句优化的核心概念。ORACLE 优化器共有三种模式...

    oracle执行计划详解

    从 Oracle 8i 开始,新引入了 CURSOR_SHARING 参数,该参数的主要目的就是为了解决在编程过程中已大量使用的硬编码 SQL 问题。 Oracle 执行计划是 Oracle 数据库性能调整的关键部分,了解这些背景知识和重要概念...

    oracle_hint教程汇总

    10. **CURSOR_SHARING**:这个Hint可以控制游标共享,允许相同SQL但不同绑定变量的语句共享相同的执行计划。 11. **SELECTIVITY**:用于提供列选择性的估计,帮助优化器更准确地计算成本。 12. **USE_CONCAT** 和 ...

    Oracle AAOUG-46

    此外,Oracle提供了如**绑定变量窥探**(bind variable peeking)和**cursor_sharing**参数来调整绑定变量的行为,以适应不同的应用场景。PL/SQL作为一种强类型的语言,使用绑定变量更为自然,而其他如Java、VB等...

    通过分析SQL语句的执行计划优化SQL

    在Oracle 8i及更高版本中,可以通过设置CURSOR_SHARING参数来控制执行计划的共享程度。例如,设置为`SIMILAR`表示相似的SQL语句将共享相同的执行计划,而设置为`EXACT`则要求SQL文本完全相同才能共享执行计划。 3....

    oracle游标溢出调优

    而 `FORCE` 则强制所有SQL语句都使用绑定变量,进一步减少解析次数。 此外,还有几个相关的视图用于监控游标状态: - `V$OPEN_CURSOR` 显示每个用户会话当前打开并解析的游标信息。 - `V$SQLAREA` 提供关于共享SQL...

    Oracle性能测试指标

    5. **共享区命中率(Library Hit%)**:表示SQL在共享区的命中率,应维持在95%以上,否则可能需要增大shared_pool_size,优化cursor_sharing参数,或使用绑定变量。 6. **软解析的百分比(Soft Parse %)**:软解析的...

    通过分析SQL语句的执行计划优化SQL.doc

    此外,Oracle从8i版本开始引入CURSOR_SHARING参数,目的是解决硬编码SQL的问题。硬编码SQL由于列值的不同导致无法共享执行计划,而CURSOR_SHARING参数可以通过设置,让数据库在一定程度上接受列值变化但结构相同的...

    让Oracle跑得更快 Oracle 10g性能分析与优化思路.part2.rar

    9.2 为什么说oltp必须要求变量绑定而olap不应该绑定变量 241 9.3 bind peaking 248 第10章 sql_trace和10046事件 254 10.1 sql_trace 254 10.2 tkprof工具 256 10.3 10046事件 268 第11章 10053事件 276 第12章 性能...

    oracle数据库期末考试试题及答案(一).pdf

    Oracle数据库期末考试试题涉及到... - 使用`ALTER SYSTEM SET CURSOR_SHARING`可以设置绑定变量策略,以稳定执行计划。 这些知识点覆盖了Oracle数据库管理和使用的多个核心领域,对于理解和操作Oracle数据库至关重要。

    让Oracle跑得更快 Oracle 10g性能分析与优化思路.part1.rar

    9.2 为什么说oltp必须要求变量绑定而olap不应该绑定变量 241 9.3 bind peaking 248 第10章 sql_trace和10046事件 254 10.1 sql_trace 254 10.2 tkprof工具 256 10.3 10046事件 268 第11章 10053事件 276 第12章 性能...

    PeopleSoft Enterprise Performance on Oracle 10G

    1. **使用绑定变量**:绑定变量可以促进SQL语句的重用,减少解析次数,节省资源。 2. **AE-重用标志**:在应用引擎中,通过设置AE-重用标志,可以进一步优化游标共享,减少资源消耗。 3. **SQR/COBOL-CURSOR_...

    Oracle Goldengate性能优化方案

    绑定变量相关的参数,例如cursor_sharing(光标共享)、OPEN_CURSORS(打开光标数)、SESSION_CACHED_CURSORS(会话缓存光标数)也是优化的一部分。 优化器相关的参数,包括optimizer_index_caching(索引缓存优化...

    Oracle命中率 笔记整理结合实例

    如果命中率太低,需要考虑加大共享池、绑定变量、修改 cursor_sharing 等参数来优化性能。 二、共享池内存使用率 共享池内存使用率是指 Oracle 共享池中剩余内存的百分比。计算公式为: SQL> SELECT (1 - ROUND...

    Oracle SQL最佳实践

    - **参数调整:** 可以通过调整 Oracle 的参数来优化 SQL 的执行计划,如设置合适的 `cursor_sharing` 参数值等。 4. **使用绑定变量:** - **绑定变量的使用:** 当应用程序需要频繁执行相同的 SQL 但每次传入的...

    oracle 性能优化

    - `CURSOR_SHARING`初始化参数控制绑定变量的使用,`FORCE`和`SIMILAR`选项可以进一步优化绑定策略。 6. **AWR报告**: - AWR(Automatic Workload Repository)报告提供了数据库性能的详细统计,包括Execute to ...

Global site tag (gtag.js) - Google Analytics