Oracle硬解析和軟解析的區(qū)別分析建站知識(shí)
導(dǎo)讀:1建站知識(shí)我們都知道在Oracle中每條SQL語(yǔ)句在執(zhí)行之前都需要經(jīng)過(guò)解析,這里面又分為軟解析和硬解析。在Oracle中存在兩種類(lèi)型的SQL語(yǔ)句,一類(lèi)為 DDL語(yǔ)句(數(shù)據(jù)seo網(wǎng)站優(yōu)化軟件百度seo網(wǎng)站優(yōu)化。
我們都知道在Oracle中每條SQL語(yǔ)句在執(zhí)行之前都需要經(jīng)過(guò)解析,這里面又分為軟解析和硬解析。在Oracle中存在兩種類(lèi)型的SQL語(yǔ)句,一類(lèi)為 DDL語(yǔ)句(數(shù)據(jù)定義語(yǔ)言),就是每次執(zhí)行都需要進(jìn)行硬解析。還有一類(lèi)就是DML語(yǔ)句,他們會(huì)根據(jù)情況選擇要么進(jìn)行硬解析,要么進(jìn)行軟解析。
一、摘要
Oracle硬解析和軟解析是我們經(jīng)常遇到的問(wèn)題,所以需要考慮何時(shí)產(chǎn)生軟解析何時(shí)產(chǎn)生硬解析,如何判斷
SQL的執(zhí)行過(guò)程
當(dāng)發(fā)布一條SQL或PL/SQL命令時(shí),Oracle會(huì)自動(dòng)尋找該命令是否存在于共享池中來(lái)決定對(duì)當(dāng)前的語(yǔ)句使用硬解析或軟解析。
通常情況下,SQL語(yǔ)句的執(zhí)行過(guò)程如下:
Step1. SQL代碼的語(yǔ)法(語(yǔ)法的正確性)及語(yǔ)義檢查(對(duì)象的存在性與權(quán)限)。
Step2. 將SQL代碼的文本進(jìn)行哈希得到哈希值。
Step3. 如果共享池中存在相同的哈希值,則對(duì)這個(gè)命令進(jìn)一步判斷是否進(jìn)行軟解析,否則到e步驟。
Step4. 對(duì)于存在相同哈希值的新命令行,其文本將與已存在的命令行的文本逐個(gè)進(jìn)行比較。
這些比較包括大小寫(xiě),字符串是否一致,空格,注釋等,如果一致,則對(duì)其進(jìn)行軟解析,轉(zhuǎn)到步驟Step6,無(wú)需再次硬解析。
否則到步驟Step5。
Step5. 硬解析,生成執(zhí)行計(jì)劃。
Step6. 執(zhí)行SQL代碼,返回結(jié)果。
二、軟解析
1.下面的三個(gè)查詢語(yǔ)句,不能使用相同的共享SQL區(qū)。盡管查詢的表對(duì)象使用了大小寫(xiě),但Oracle為其生成了不同的執(zhí)行計(jì)劃
select * from emp; select * from Emp; select * from EMP;2.類(lèi)似的情況,下面的查詢中,盡管其where子句empno的值不同,Oracle同樣為其生成了不同的執(zhí)行計(jì)劃  seo網(wǎng)站優(yōu)化;
select * from emp where empno=7369 select * from emp where empno=77883.在判斷是否使用硬解析時(shí),所參照的對(duì)象及schema應(yīng)該是相同的,如果對(duì)象相同,而schema不同,則需要使用硬解析,生成不同的執(zhí)行計(jì)劃
sys@ASMDB> select owner,table_name from dba_tables where table_name like 'TB_OBJ%'; OWNER TABLE_NAME ------------------------------ ------------------------------ USR1 TB_OBJ --兩個(gè)對(duì)象的名字相同,當(dāng)所有者不同 SCOTT TB_OBJ usr1@ASMDB> select * from tb_obj; scott@ASMDB> select * from tb_obj; --此時(shí)兩者都需要使用硬解析以及走不同的執(zhí)行計(jì)劃聲明: 本文由我的SEOUC技術(shù)文章主頁(yè)發(fā)布于:2023-05-22 ,文章Oracle硬解析和軟解析的區(qū)別分析建站知識(shí)主要講述區(qū)別,標(biāo)簽,Oracle硬解析和軟解析的區(qū)別分析建站知網(wǎng)站建設(shè)源碼以及服務(wù)器配置搭建相關(guān)技術(shù)文章。轉(zhuǎn)載請(qǐng)保留鏈接: http://www.bifwcx.com/article/web_4522.html
為你推薦與Oracle硬解析和軟解析的區(qū)別分析建站知識(shí)相關(guān)的文章
-
通王TWCMS 2.0.3網(wǎng)站模板程序下載
(126)人喜歡 2024-01-15 -
Windows官方原版在哪里下載
(175)人喜歡 2024-01-15 -
WordPress網(wǎng)站模板發(fā)帖標(biāo)題顏色設(shè)置
(131)人喜歡 2024-01-07 -
修改discuz論壇帖子標(biāo)題80字符的長(zhǎng)度限制
(249)人喜歡 2024-01-07 -
wordpress程序調(diào)用不帶超鏈接的Tag標(biāo)簽
(234)人喜歡 2024-01-05 -
網(wǎng)站在不同時(shí)期需調(diào)整內(nèi)容更新的方向
(112)人喜歡 2023-08-12