查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧!Parent-Child cursor (父子游标) 父游标:只要SQL语句文本相同,它们就对应同一个parent cursor。 子游标:在某些情况下,虽然SQL语句的文本相同,但是因为其它因素不同(这些因素可以在视图V$SQL_SHARED_CURSOR中查看),致使产生不同的child cursor。(重新生成child cursor,也就意味着一次硬剖析) cursor_sharing 对于是不是应用绑定变量这个问题,最好是交给应用程序决议,在数据库层面是很难正确...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2013-05-31 21:24:00
                            
                                190阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
             章宇文 数据和云 
 
编辑手记:在SQL执行的过程中,选择不同的执行计划所产生的性能差异非常大,因此能够符合业务地选择正确的执行计划非常重要。但在真实环境中,总会受到一些因素的影响,今天我们来分析谓词越界和绑定变量窥探对SQL执行计划的影响。
案例场景
最近有一客户晚上新导入了一批数据到数据库中,第二天发现业务变慢,主要是其中有一条核心业务SQL执行计划走错导致。 
结果排查发现            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-06-21 14:35:15
                            
                                481阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             
oracle变量绑定
 
     近期查看公司业务系统的DB层代码,发现SQL语句多采用常量形式,难怪公司总抱怨系统效率低。我知道采用绑定变量可以很大程度上提高效率,但却解释不清,到网上百度了一下,找到这篇文章,写的还不错,就摘录下来。以备以后参考。
********************************            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2011-11-23 18:09:12
                            
                                1256阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            plsql            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-12-03 22:06:00
                            
                                1129阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            [toc] 1.替代变量 通常而言,替代变量的前缀是 区别: & 用来创建一个临时变量,每当遇到这个临时变量时,都会提示你输入一个值 &&用来创建一个持久变量,当用&&命令引用这个变量时,不会每次遇到该变量就提示用户键入值,而只是在第一次遇到时提示一次 2.范例 此范例运行结果如下: 在上图中我们可            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-05-25 17:31:00
                            
                                169阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析,一种叫做软解析.一以及修            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-01 22:19:20
                            
                                216阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析,一种叫做软解析。一个硬解析需要经解析,制定执行路径,优化访问计划等许多的步骤。硬解释不仅仅耗费大量的cpu,更重要的是会占据重要的们闩(latch)资源,严重的影响系统的规模的扩大(即限制了系统的并发行), 而且引起的问题不能通过增加内存条和cpu的数量来解决。之所以这样是因为门闩是为了顺序访问以及修改一些内存区            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-08-20 10:29:28
                            
                                3339阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            替代变量说明 在Oracle命令行中默认&为替代变量,只要在执行的sql中出现&符号,那么&符号后面的sql则会失效; 这就意味着,包含&符号的sql将不会正确的            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-15 09:20:56
                            
                                94阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            不太喜欢看到在procedure用||拼接sql的语句所以贴了个绑定变量的例子,仅供参考 create or replace procedure using_t            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-04-20 15:49:38
                            
                                139阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ------------------------------------定义使用变量----------------------------------    --scalar 变量    declare            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-05-19 16:07:45
                            
                                825阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Oracle Stored Procedure 與 Function 有個最大的相異處就是,Oracle Function 必須/一定有 Return 值,執行後就會把 Return 值丟出來,Return 值可以是任何的 Type,甚至是 Oracle Object Type 都是可行的。而 Oracle Stored Procedure,則由參數的 IN/OUT 性質來定義/控制的輸出入方            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-17 05:32:29
                            
                                210阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            oracle执行cmd
装了一个oracle db11g,于是想试一下网上流传的在sqlplus中执行cmd的一些命令,也不知怎么的,没一个好用的,可能是网上转来转去的转错了.不过有一个简单的执行cmd命令方法: SQL> host net user User accounts for \\PC-ATQHJ4UG1SDA ----------------------            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2010-01-31 20:54:54
                            
                                624阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            执行SQL的步骤: 输入SQL->解析SQL->(解析后的SQL)->优化器->(执行计划)->行源生成器->(查询计划/迭代计划)->SQL引擎->(结果集) 一、SQL解析: 开始解析时,数据库会创建一个游标,存在于特定会话私有SQL去中。之后以分析的SQL语句和其他处理信息都存储在其中,SQL ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-09-05 09:48:00
                            
                                503阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            看了一篇oracle执行顺序滴,感觉挺好滴1。分析分析是处理SQL语句的第一步,它是SQL语句处理过程较为重要的一步,它又包含几个方面:(1)语法分析,oracel是采用数据库常用的自底向上的分析方法,包含检查语法规范,命名规范,它是处理SQL语句中最消耗时间且代价最高的步骤,主要表现在绑定变量和存储过程等方面:A.绑定变量:这也是为什么使用在某种情况下绑定变量方式会比非绑定方式效率和性能高出几            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-04-20 15:45:13
                            
                                252阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Linux 是一种广泛使用的操作系统,它具有许多优势,其中之一就是可以轻松地执行 Oracle 数据库。在 Linux 上执行 Oracle 数据库需要一些步骤,但只要按照正确的方法进行操作,就可以让 Oracle 在 Linux 上稳定运行。
首先,要在 Linux 上执行 Oracle 数据库,首先需要下载并安装相应的 Oracle 软件。Oracle 官方网站上有针对 Linux 系统的安            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-03-12 12:04:22
                            
                                98阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Oracle里的绑定变量 使用绑定变量,是可以重用解析树和执行计划基础条件. 绑定变量的典型写法 --sql var x number; exec :x := 7369; select ename from emp where empno= :x; --plsql declare vc_name v ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-09-04 14:29:00
                            
                                514阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Oracle绑定变量详解一.绑定变量绑定变量:为了成功地执行语句,一个变量必须在一个SQL语句中替换为一个有效的值或者一个值的地址,。变量绑定是OLTP系统中一个非常值得关注的技术。良好的变量绑定会使OLTP系统数据库中的SQL执行速度飞快,内存效率极高;不使用绑定变量可能会使OLTP数据库不堪重负,资源被SQL解析严重耗尽,系统运行缓慢。当一个用户与数据库建立连接后,会向数据库发出操作请求,即向            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2013-10-08 15:31:10
                            
                                612阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            以下为测试 代码块DECLARE v_i number := 100; v_p VARCHAR2(200) := 'a';BEGIN DECLARE v_i number := 999; BEGIN dbms_output.put_line(v_i); dbms_output.put_line(v_...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-15 17:48:45
                            
                                220阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            随着具体输入值的不同,SQL的where条件的可选择率(Selectivity)和结果集的行数(Cardinality)可能会随之发生变化,而Selectivity和Cardinality的值会直接影响CBO对于相关执行步骤成本值的估算,进而影响CBO对SQL执行计划的选择。这就意味着随着具体输入值的不同,目标SQL执行计划可能会发生变化。对于不使用绑定变量的SQL而言,具体输入值一量发生了变化,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                            精选
                                                        
                            2017-03-07 16:30:27
                            
                                2097阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录一、Oracle环境变量1、ORACLE_HOME2、ORACLE_BASE3、ORACLE_SID4、NLS_LANG5、PATH6、LD_LIBRARY_PATH            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-11-22 22:36:03
                            
                                1683阅读
                            
                                                                             
                 
                
                                
                    