成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據庫優化技術之Oracle數據庫動態綁定變量

數據庫 Oracle
本文主要介紹了Oracle數據庫動態綁定變量的實現方法,還介紹了硬解析與軟解析的差異,并給出了實例的說明,希望能夠對您有所幫助。

我們知道,分享池(shared pool)是系統大局區(System Global Area ,SGA)中一個極其重要的分享內存構造。然而Oracle數據庫將已解析、已編譯的SQL 連同其他內容存儲在這里。可是已解析,已編譯的SQL要想告終其復用有一個前提,要求開發人員在大多數情形下都會利用綁定變量。本文我們主要就介紹了一些Oracle數據庫綁定變量的知識,下面我們就開始介紹。

綁定變量(bind variable)是查詢中的一個占位符。

例如比擬如下SQL語句:

  1. select * from table where id = 1與  
  2.  
  3. my_id :1 
  4.  
  5. select * from table where id = my_id 

對于***個SQL語句,在查詢中利用直接量(常量),那么每個查詢都將是一個嶄新的查詢,在數據庫看來過去從未見過,定然對查詢舉行解析、限量(命名解析)、平安性察看、優化等。容易地講,即便你厲行的每條不同的語句都要在厲行時舉行編譯。(解析包括有硬編碼變量的語句稱為硬解析

而對于第二個查詢利用了一個綁定變量my_id,變量值在查詢厲行時供給。這個查詢只編譯順次,隨后會把查詢計劃存儲在一個分享池(庫緩存)中,以便爾后獲得和重用這個查詢計劃,(重用已解析的查詢計劃稱為軟解析)。

軟解析與硬解析之間的差異重要體目前以下幾個方面:

1、與軟解析相比硬解析必需的工夫更長,而且要花費更多的資源,硬解析會收縮系統能扶持的用戶數。

2、硬解析一個查詢時,數據庫會更伙計夫地挪借一種低級串行穿戴備,這稱為閂(latch),這些閂能防御Oracle分享內存中的數據構造不會同時被兩個歷程修正,而且萬一有人正在修正數據構造,則不批準另外的人再來讀取。對這些數據構造加閂的工夫越長、越頻繁,排隊期待閂的歷程就越多,期待隊列也越長。你可能開始壟斷貴重的資源。有時你的計算機顯明利用不足,然而數據庫中的所有利用都運行得極其慢。構成這種假象的起因可能是有人割據著某種串行穿戴備,而其他期待串行穿戴備的人開始排隊,因而你無法全速運行。數據庫中凡是有一個利用出現不佳,就會嚴重地波及所有其他利用的功能。萬一只有一個薄利用沒利于用綁定變量,那么即便其他利用原本設計得很好,能妥本地將已解析的SQL放在分享池中以備重用,但因為這個薄利用的存在,過一段工夫就會從分享池中剔除已存儲的SQL。這就使得這些設計貼切的利用也定然再次硬解析SQL。

代碼告終實例:

1、oracle自己默認告終的綁定變量:

  1. for i in 1..1000 loop  
  2.  
  3. select count(*) into my_count from table where my_type = i;  
  4.  
  5. ne.nexuscenter.com.cn<end loop; 

在上面的情形,Oracle會自己綁定變量,即,萬一參數保留在一個數組中,select語句放在一個循環中,select 語句只會編譯順次。

2、動態綁定變量

  1. my_type:='type1';  
  2.  
  3. my_count :0;  
  4.  
  5. my_sql:='select count(*) into :x from table where type = :y' 
  6.  
  7. Execute Immediate my_sql into my_count using my_type; 

然而這段代碼包括額外的String,并非全面必需。

關于Oracle數據庫優化的知識就介紹到這里了,如果您想了解更多的關于Oracle數據庫的知識,可以看一下這里的文章:http://database.51cto.com/oracle/,相信一定能夠帶給您收獲的!

【編輯推薦】

  1. Oracle數據庫常見問題及解決方案大全
  2. 用于存儲xml的數據庫之DBXML簡單介紹
  3. PL/SQL Developer導入導出數據庫方法及說明
  4. Oracle 11g即時客戶端在Windows系統上的配置
  5. Oracle 11g客戶端在Linux系統上的配置步驟詳解
責任編輯:趙鵬 來源: 網易博客
相關推薦

2011-05-18 09:39:19

Oracle數據庫性能優化

2010-05-10 15:50:39

Oracle數據庫性能

2011-08-02 13:37:17

2010-04-21 14:00:48

Oracle數據庫

2014-06-10 15:07:19

Oracle數據庫優化

2009-11-18 18:16:17

Oracle數據庫優化

2011-05-20 10:30:20

ORACLE數據庫性能優化

2011-05-17 15:02:15

ORACLE數據庫備份

2019-01-16 14:20:42

2013-09-17 10:32:08

Android性能優化數據庫

2014-07-18 09:33:53

數據庫數據庫優化

2011-05-19 10:29:40

數據庫查詢

2011-03-31 09:19:54

數據庫優化

2010-04-09 16:51:24

Oracle數據庫

2010-04-09 15:08:17

Oracle 數據庫性

2023-08-28 10:42:22

數據庫Oracle

2010-04-23 09:23:44

Oracle 數據庫

2011-05-26 10:30:12

Oracle數據庫約束

2011-03-10 13:24:26

2015-08-21 12:59:38

Oracle數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: wwwxxx日本在线观看 | 国产高潮av| 2019天天操 | 精品福利av导航 | 国产精品美女久久久久aⅴ国产馆 | 精品久久久精品 | 欧美 日韩 中文 | 精品一区二区三区四区视频 | 国产一区二区三区 | 日韩快播电影网 | 在线日韩 | 日韩一级一区 | 亚洲一区二区中文字幕 | 久久久久久久久国产成人免费 | 免费视频99| 在线一区二区观看 | 亚洲精品一区二区 | 欧美日韩高清一区二区三区 | 国产精品久久久久久久久久不蜜臀 | 国产激情视频在线免费观看 | 久久综合激情 | 免费精品 | 欧美亚洲一区二区三区 | 国产亚洲欧美在线 | 成人一区二区三区在线观看 | 久久综合九色综合欧美狠狠 | 精品国产91乱码一区二区三区 | 午夜视频一区 | 欧美精品日韩精品国产精品 | 国产一区二区三区四区 | 91精品国产91久久久久游泳池 | 久久91精品| 国产成人高清成人av片在线看 | 久久草在线视频 | 日日操夜夜操天天操 | 一区二区三区亚洲 | 欧美99久久精品乱码影视 | 亚洲精品自在在线观看 | 九九热国产视频 | 狠狠综合久久av一区二区老牛 | 日韩精品三区 |