oracle分區sql
❶ oracle分區表的分區有幾種類型
oracle分區表的分區有四種類型:范圍分區、散列分區、列表分區和復合分區。
特點如下:
1、范圍分區
就是根據資料庫表中某一欄位的值的范圍來劃分分區。
數據中有空值,Oracle機制會自動將其規劃到maxvalue的分區中。
2、散列分區
根據欄位的hash值進行均勻分布,盡可能地實現各分區所散列的數據相等。
散列分區即為哈希分區,Oracle採用哈希碼技術分區,具體分區如何由Oracle說的算,也可能我下一次搜索就不是這個數據了。
3、列表分區
列表分區明確指定了根據某欄位的某個具體值進行分區,而不是像范圍分區那樣根據欄位的值范圍來劃分的。
4、復合分區
根據范圍分區後,每個分區內的數據再散列地分布在幾個表空間中,這樣我們就要使用復合分區。復合分區是先使用范圍分區,然後在每個分區同再使用散列分區的一種分區方法。
比如將part_date的記錄按時間分區,然後每個分區中的數據分三個子分區,將數據散列地存儲在三個指定的表空間中。
(1)oracle分區sql擴展閱讀:
分區的恢復方法:
如果資料庫運行在archive 模式下,那麼一旦資料庫損壞則可以通過冷備份(熱備份)和歸檔備份將資料庫恢復到斷點狀態。
資料庫控制文件恢復(假設所有控制文件均被破壞):
資料庫基於文件系統: 利用操作系統的tar、cp等命令即可。
資料庫基於裸設備:dd if=$ORACLE_BASE/con.bak of=/dev/rdrd/drd1 seek=12
❷ oracle范圍分區,報無效sql語句
將下列語句放到 test.sql
PROMPT Creating Table 'INSTRUCTOR';
CREATE TABLE INSTRUCTOR
(INSTRUCTOR_ID NUMBER(8,0)
,SALUTATION VARCHAR2(5)
,FIRST_NAME VARCHAR2(25)
,LAST_NAME VARCHAR2(25)
❸ oracle 分區 應該什麼時候進行
這個可以根據時間自行設置的。
首先明確分區表和表分區的區別:表分區是一種思想,分區表示一種技術實現。當表的大小過G的時候可以考慮進行表分區,提高查詢效率,均衡IO。oracle分區表是oracle資料庫提供的一種表分區的實現形式。表進行分區後,邏輯上仍然是一張表,原來的查詢SQL同樣生效,同時可以採用使用分區查詢來優化SQL查詢效率,不至於每次都掃描整個表
1、按時間分區表創建:
create table t_test (
pk_id number(30) not null,
add_date_time DATE,
constraintPK_T_TEST primary key (pk_id)
)
PARTITION BY RANGE (add_date_time)
(
PARTITIONt_test_2013_less VALUES LESS THAN (TO_DATE('2013-01-01 00:00:00','yyyy-mm-ddhh24:mi:ss')) TABLESPACE TS_MISPS,
PARTITIONt_test_2013 VALUES LESS THAN (TO_DATE('2014-01-01 00:00:00','yyyy-mm-ddhh24:mi:ss')) TABLESPACE TS_MISPS,
PARTITION t_test_2014VALUES LESS THAN (TO_DATE('2015-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss'))TABLESPACE TS_MISPS
)
其中add_date_time為分區欄位,每一年一個分區。
插入100W數據
declare
i int := 1;
yearVARCHAR2(20);
begin
loop
year := CASEmod(i, 3)
WHEN 0 THEN
'2012-01-14 12:00:00'
WHEN 1 THEN
'2013-01-14 12:00:00'
ELSE
'2014-01-14 12:00:00'
END;
insert into t_test values(i, to_date(year, 'yyyy-mm-dd hh24:mi:ss'));
exit when i= 1000000;
i := i + 1;
end loop;
end;
查看分區表的分區的詳細信息
Select table_name,partition_name,high_value fromdba_tab_partitions where table_name='T_TEST';
2、分區表修改
2.1增加一個分區
分兩種情況:1.沒有maxvalue分區。2.有maxvalue分區。我們創建的分區就是沒有maxValue的分區
1.沒有maxvalue分區添加新分區:
alter table t_test add partition t_test_2015 VALUESLESS THAN (TO_DATE('2015-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACETS_MISPS ;
2、有maxvalue分區添加新分區:
有了maxvalue,就不能直接add partition,而是需要max分區split。例如我們將創建的分區的語句修改下:
create table t_test (
pk_id number(30) not null,
add_date_time DATE,
constraintPK_T_TEST primary key (pk_id)
)
PARTITION BY RANGE (add_date_time)
(
PARTITIONt_test_2013_less VALUES LESS THAN (TO_DATE('2013-01-01 00:00:00','yyyy-mm-ddhh24:mi:ss')) TABLESPACE TS_MISPS,
PARTITIONt_test_2013 VALUES LESS THAN (TO_DATE('2014-01-01 00:00:00','yyyy-mm-ddhh24:mi:ss')) TABLESPACE TS_MISPS,
PARTITIONt_test_2014 VALUES LESS THAN (TO_DATE('2015-01-01 00:00:00','yyyy-mm-ddhh24:mi:ss')) TABLESPACE TS_MISPS,
PARTITION t_test_maxVALUES LESS THAN (MAXVALUE)
)
增加一個2016年的分區語句為:
alter table t_test split partition t_test_max at(TO_DATE('2016-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) into (partitiont_test_2015,partition t_test_max);
2.2刪除一個分區
alter table t_test drop partition t_test_2014
註:droppartition時,該分區內存儲的數據也將同時刪除,你的本意是希望刪除掉指定的分區但保留數據,你應該使用merge partition,執行該語句會導致glocal索引的失效需要重建全局索引
2.3合並分區
相鄰的分區可以merge為一個分區,新分區的下邊界為原來邊界值較低的分區,上邊界為原來邊界值較高的分區,原先的局部索引相應也會合並,全局索引會失效,需要rebuild。
Alter table t_test merge partitions t_test_2013 ,t_Test_2014 into partition t_Test_2013_to_2
❹ oracle資料庫如何查看錶的表分區的信息(每個表分區的名字和所屬表空間)
這樣SELECT TABLE_NAME,PARTITION_NAME,TABLESPACE_NAME
FROM USER_TAB_PARTITIONS
註:
USER_TAB_PARTITIONS:可查看分區表的名字、歸屬表空間以及表的詳細分區情況。
USER_PART_TABLES:可查看用戶所有的分區表,以及分區方式。
(4)oracle分區sql擴展閱讀:
分區表的作用
Oracle的表分區功能通過改善可管理性、性能和可用性,從而為各式應用程序帶來了極大的好處。通常,分區可以使某些查詢以及維護操作的性能大大提高。此外分區還可以極大簡化常見的管理任務,分區是構建千兆位元組數據系統或超高可用性系統的關鍵工具。
分區功能能夠將表、索引或索引組織表進一步細分為段,這些資料庫對象的段叫做分區。每個分區有自己的名稱,還可以選擇自己的存儲特性。從資料庫管理員的角度來看,一個分區後的對象具有多個段,這些段既可進行集體管理,也可單獨管理,這就使資料庫管理員在管理分區後的對象時有相當大的靈活性。
但是,從應用程序的角度來看,分區後的表與非分區表完全相同,使用 SQL DML 命令訪問分區後的表時,無需任何修改。
❺ oracle 分區的問題
由於ORACLE資料庫產品是當前資料庫技術典型代表,她產品除資料庫系統外,還有應用系統、開發工具等。剛接觸Oracle人員都有這樣感覺:Oracle產品太多,每個產品內容精深,不知道從哪兒開始學才好。為用少量時間更好地理解和使用oracle 資料庫系統,有必要對oracle一些基本術語及概念進行解,下面給出一些在管理中經常用到概念和術語,供初學者快速解Oracle資料庫系統提供方便。 §1.1 ORACLE7和ORACLE8 ORACLE7是一種完全關系資料庫系統,它不支持面向對象。 ORACLE8 則是一個引入面向對象資料庫系統,它既非純面向對象資料庫也非純關系資料庫,它是兩者結合,因此叫做「對象關系資料庫」。 §1.2 ORACLE8 特點 ORACLE8 於 1997年6月正式發布,它包括幾乎所有資料庫技術,因此被認為是未來企業級主選資料庫之一。主要有以下特點: 1.對象/關系模型 ORACLE8對於對象模型採取較為現實和謹慎態度,使用對象/關系模型,即在完全支持傳統關系模型基礎上,為對象機制提供有限支持。ORACLE8不僅能夠處理傳統表結構信息,而且能夠管理由C++,Smalltalk 以及其它開發工具生成多媒體數據類型,如文本,視頻,圖形,空間對向等。這種做法允許現有軟體開發產品與工具軟體及ORACLE8應用軟體共存,保護客戶投資。 2.資料庫伺服器系統動態可伸縮性 ORACLE8引入連接存儲池(connection polling)和多路復用(multiplexing)機制,提供對大型對象支持。當需要支持一些特殊數據類型時,用戶可以創建軟體插件(catridge )來實現。ORACLE8採用高級網路技術,提高共享池和連接管理器來提高系統可括性,容量可從幾 GB 到 幾百 TB 位元組,可允許10萬用戶同時並行訪問,ORACLE 資料庫中每個表可以容納 1000列,能滿足目前資料庫及數據倉庫應用需要。 ORACLE 公司稱,ORACLE8可以支持達 512PB數據量。但目前還未有哪一家用戶資料庫數據量達到這個數量。下面是幾種常用數據量等價關系: 1MB = 1024 KB 1GB = 1Gigabyte Byte = 1024 MB 1TB = 1TeraByte = 1024 GB = 1024*1024MB 1PB = 1PeraByte = 1024 TB = 1024 * 1024 * 1024 MB 1EB = 1ExaByte = 1024 PB = 1024 * 1024 *1024 *1024 MB 3.系統可用性和易用性 ORACLE8提供靈活多樣數據分區功能,一個分區可以是一個大型表,也可以是索引易於管理小塊,可以根據數據取值分區。有效地提高系統操作能力及數據可用性 ,減少I/O 瓶頸。ORACLE8還對並行處理進行改進,在點陣圖索引,查詢,排序,連接和一般索引掃描等操作引入並行處理,提高單個查詢並行度。ORACLE8通過並行伺服器(Parallel Server Option )來提高系統可用性。 4.系統可管理性和數據安全功能 ORACLE8提供自動備份和恢復功能,改進對大規模和更加細化分布式操作系統支持,如加強SQL 操作復制並行性。為幫助客戶有效地管理整個資料庫和應用系統,ORACLE還提供企業管理系統(ORACLE Enterprise Manager),資料庫管理員可以從一個集中控制台拖放式圖形用戶界面管理ORACLE系統環境。 ORACLE8通過安全伺服器中提供安全服務,加強ORACLE Web Server 中原有用戶驗證和用戶管理。 5.面向網路計算 ORACLE8i在 與JAVA VM 及 CORBA ORB 集成後,將成為NCA(網路計算機體結構)核心部件。NCA是ORACLE 分布式對象與網路計算機戰略規劃。ORACLE8 對NCA產生巨大影響,簡化應用軟體化分,推動瘦型客戶機及Web 應用軟體發展。在ORACLE8 FOR NT 中還提共新產品Web 發布助理(Web Publishing Assistant ORACLE),提供一種在WORD WIDE WEB 上發布資料庫信息簡便,有效方法。 6.對多平台支持與開放性 網路結構往往含有多個平台,ORACLE8 可以運行於目前所有主流平台上,如 SUN Solarise, Sequent Dynix/PTX,Intel Nt,HP_UX,DEC_UNIX,IBM AIX 和 SP等。ORACLE8 異構服務為同其它數據源以及使用SQL 和PL/SQL服務進行通訊提供必要基礎設施。ORACLE8 繼續至力於對開放標准規范SQL3,JDBC,JSQL和CORBA 支持。 §1.3 ORACLE8和ORACLE8i 當 ORACLE 8 第一次發行時,它提供優於 ORACLE 7 性能和選件,但是它基本是ORACLE7 引擎。 在ORACLE8 後來版本中不斷作過多次完善,出現 ORACLE 8.0.X 版本。然而1998年初發行(推出) ORACLE 8I 可以被看作是 ORACLE 8 功能擴展集。 由於ORACLE 8I 比 ORACLE 8 提供更多功能,它除共同RDBMS功能外,還提供許多與INTERNET 能力,最重要是它將 JAVA 集成為一種內部數據語言,這種語言可充當或替代品,而且它還集成一個WEB伺服器和開發平台(Web DB )。對ORACLE 8.0.x 來說只到 ORACLE 8.0.5 版本就終止,接著就推出 ORACLE8i 8.1.5版本,ORACLE8i 8.1.5版本也經常被稱為Release 1;而ORACLE8i 8.1.6版本被稱為Release 2;ORACLE8i 8.1.7版本被稱為Release 3。 §1.4 ORACLE8i和ORACLE9i 在正式進入21世紀前2000年年底,ORACLE公司正式發布ORACLE 9i 新資料庫系統。原先預料可能會有ORACLE 8i V8.1.8等版本,但ORACLE8i版本只推出8.1.7就被Oracle9i所代替。ORACLE公司和其它軟體公司一樣,為搶占市場,不再願意在原來版本上再作更多改進和優化工作,而是直接推出新產品這樣一種策略。ORACLE9i 與ORACLE8i 比較,ORACLE 9i 主要包括下面三大部分: l 資料庫核心(Database ) l 應用伺服器(Application Server ) l 開發工具集(Developer Suite ) Oracle9i 主要焦點(Oracle9i Focus ): l 電子商務智能化( E-Business Intelligence ) l 應用開發( Applications Development ) l 應用主機( Applications Hosting ) l 門戶與內容( Portals and Content ) l 電子商務連續性( E-Business Continuity ) Oracle9i 為結合 Internet 市場設計。Oracle9i適合並勝任市場上所有苛刻要求。 l Oracle9I實時應用( Oracle9i Real Application) l Oracle9I高可用性(Oracle9i High Availability) l Oracle9I 系統管理( Oracle9i Systems Management ) l Oracle9I 安全( Oracle9i Security) Oracle9i 資料庫服務(Oracle9i Database Services): l 商業智能與數據倉庫( Business Intelligence and Data Warehousing) l Oracle9I動態服務( Oracle9i Dynamic Services) l Oracle9I JAVA 和XML(Oracle9i Java and XML) l 電子商務集成( E-Business Integration ) §1.5 ORACLE OAS和ORACLE iAS 目前ORACLE公司iAS 早期版本是 ORACLE Web Server ,後來第4版改名為ORACLE APPLICATION SERVER ,2000年底前又改名為 ORACLE9i Internet Application Server(ORACLE iAS)。目前iAS可以與ORACLE8i 或ORACLE9i 結合在一起綜合開發工具。為創建和部署任何基於網路應用程序提供一個完整Internet 平台,iAS包括門戶、事務應用、商業智能工具、無線上網應用和企業集成等。 Oracle Internet Application Server 提供行業中最全面中間層產品,包括通信、表示、商業邏輯、數據緩存和系統服務等。 1.通信服務: 基於Apache ORACLE HTTP Server,主要包括下面模塊: mod_jserv:將對servlet HTTP請求分發到Oracle iAS Servlet 引擎。 Mod_perl:將perl 程序HTTP 請求分發到Apache Web Server Perl Interpreter。 Mod_ssl:提供基於SSL證書公共密鑰,它被用來在客戶端和Apache Server 之間進行加密通信。 Mod_plsql:Oracle 專用模塊,用來將HTTP請求傳到資料庫內PL/SQL和Java存儲過程。 2. 表示服務 提供下面方法進行內容表示: Oracle portal(Oracle 門戶) Apache Jserver (Apache Java 伺服器) Perl Interpreter( Perl 解釋程序 ) Oracle JavaServer Pager(JSP) Oracle PL/SQL Server Pages(PSP) 3.商業邏輯服務 可提供以下服務組件: Oracle8i JVM( Java 虛擬機) Oracle8i PL/SQL Java 商業組件(BC4J) Form Service Report Service Discoverer Viewer 4.數據管理服務 Oracle 8i cache 5.系統服務 Oracle Enterprise Manager(Oracle 企業管理器) Oracle Advanced Security (Oracle 高級安全性) Developer's KITS(開發工具),包括: l Oracle database client developer's Kit l Oracle XML developer's Kit(XDK) l Oracle LDAP developer's Kit §1.6 ORACLE Application R11i Oracle 公司除提供完美資料庫系統外,也提供完整解決方案套件,即全套應用系統,通常稱作 Oracle Application R11i。它是一全面集成電子商務套件。它包括: 1.數據倉庫平台 l Oracle 8i 企業級資料庫伺服器 l Oracle Warehouse Builder(數據倉庫構造器) 2.商業智能工具集 l Oracle Discoverer l Oracle Express產品系列 l Oracle darwin 3.Oracle 金融服務應用 l 績效管理 l 客戶關系管理 l 風險管理 4.ORACLE財務系統 基於Internet 財務管理系統包括下面模塊: l 商業智能管理 l 預算管理 l 合並管理 l 現金預測管理 l 員工費用管理 l Oracle 財務分析系統 l Oracle 項目管理系統 l 工作流程管理 l 預警系統 §1.7 ORACLE 伺服器組件 l 過程組件 可以用於建立過程、觸發器(封裝),這些代碼可以存放在資料庫伺服器中。Oracle,Sybase,Informix,Sql Server 都把這些所謂存儲過程存放在資料庫內,而DB2則把這些所謂存儲過程存放在伺服器另外一個專門分區內。 l 分布選件 可以支持多台伺服器(在不同地方)間通信,即每個伺服器上均有Oracle系統,而分布選件就是把這些不同地方資料庫系統管理起來部件。 l 並行選件 對一台具有多個CPU機器能進行並行查詢、充分利用計算機性能。 l 並行伺服器 對於多台機器(有自己處理器)共同訪問同一個硬碟這樣結構進行管理,為用戶提供很高容錯性。當某台機器出現故障時,可以安排用戶使用(登錄)到另一台機器上。當兩台都出現故障時,則整個系統都不能使用。 l 圖象選件 可以存儲、管理和提供實時,全屏幕圖象和高質量聲音給網路上用戶。 l 企業管理器 Oracle 提供一個幫助用戶管理系統,應用網路和資料庫工具「Oracle企業管理器(OEM)」. l 空間數據選件(Spatial data option) 空間數據選件是一種存儲和檢索數據新方法,在查詢中系統根據所關心數據進行組織,因此,資料庫性能主要決定因素是所感興趣資料庫集大小。 l 上下文選件 是一種文本管理方案,它把非結構化文本數據管理如同結構化一樣。可以建立和開展基於文本帶有類似SQL介面應用。這種方法只有 ORACLE8 及以後版本能支持。 l Web伺服器 可以通過WWW來訪問Oracle資料庫中數據。 l OLAP選件 聯機分析處理,Oracle提供Oracle Express作為聯機分析處理。 §1.8 目前ORACLE8i 主要產品 (Oracle9i產品在最後一天介紹) l SQL*Plus OracleSQL*Plus是標准SQL一個超集,它除提供符合SQL標准語句外,還提供一些Oracle特定外加語句,set,column,Ttitle等。 l Oralce Forms Oracle Forms前身是SQL*Forms。SQL*Forms和Oracle Forms都是為用戶提供輸入、查詢、修改等功能開發工具,前者是在字元終端上運行。後者是在圖形終端上運行。Oracle Forms除在許多觸發器及功能鍵繼承前者外,大部分設計界面都發生變化。 SQL*Forms不含Menu功能,Menu專門為一個產品叫SQL*Menu;而Oracle Forms 把Menu,Library 等融為一體,使功能更強大。 l Oracle Reports Oracle Reports先前版本是SQL*Reportwriter,自從Oracle7以後,將其發展為能支持Windows界面開發工具,在最新版本中,它可以訪問其他主要資料庫,如Sybase, Informix, DB2 ,Microsoft SQL Server等。 l Oracle Book Oracle Book提供一個共享Oracle產品文本聯機文檔生成與瀏覽工具。 l Oracle Loader Oracle Loader早期就提供一個ODL(Oracle data Loader)數據載入工具。該工具可以把多種格式文本數據載入到Oracle表中。後來版本更名為SQL*Loader,現在叫Oracle Loader,目前版本可以把多媒體數據載入到資料庫系統中。 l Developer/2000 和 Oracle Developer 是一個綜合產品總稱,它包括: l Oracle Reports l Oracle Forms l Oracle Graphics l Procere Builder 四個部件,它先前名稱叫CDE產品(即協同開發環境),現在Oracle開發工具叫Oracle Developer。 l ORACLE Designer(Designer /2000) ORACLE Designer 前身是 Designer/2000,而Designer/2000前身是SQL*Case,它是一個資料庫Case工具(計算機輔助設計工具),它目前版本包含: Business Process Reengineering Modellers Generators l Personal Oracle 95年後,Oracle 提供可以在Dos,Windows3.x,Windows95,Windows NT 等不同單機版,它基本使用方法完全同工作組版和企業版一樣。 l SQL*Net和Net 8 SQL*Net和Net 8都提供在網路下訪問Oracle資料庫產品。SQL*Net 分為SQL*Net V1 和SQL*Net V2。SQL*Net V1主要支持字元終端方式,如Dos,終端伺服器方式;SQL*Net V2.x主要支持圖形終端與Oracle連接,而Net 8則是Oracle 8網路產品SQL*Net V2.x升級版。 l Oracle Jdeveloper Oracle 最新產品,它是一個具有高效生產力3GL編程工具,它可以使編程人員在Java中嵌入SQL語句,編寫能訪問資料庫Java程序。 l Oracle Express 可以在線分析處理工具,利用它可以方便地進行各種數據分析。 l PRO*C, PRO*COBOL, PRO*FORTRAN等 可以提供與3GL介面工具,利用它可以在高級語言中嵌入 SQL語句,從而達到訪問Oracle資料庫目。 l 財務軟體( ORACLE Financials ) ORACLE Financials 是 ORACLE APPLICATION 中用於財務管理應用程序模塊。包括財務會計,管理會計。 l 供應鏈與製造應用軟體 包括: l 銷售定單管理 l 供應商管理 l 新產品工程設計管理 l 物料管理 l 成本管理 l 質量管理
❻ oracle分區怎麼寫sql能用到分區索引
非主鍵、唯一鍵的索引。都可以考慮創建分區索引。 提升1: 經常要分區交換的索引。 提升2: 分區鍵以及被索引列經常在SQL語句裡面同時出現。 提升3: 經常要對分區表進行維護操作。(例如move、rebuild index等)
❼ oracle中怎麼查詢某張表的分區
1、首先打開plsql,輸入用戶名密碼,登陸訪問表所在的資料庫。
❽ 關於ORACLE分區表的一些問題
要看你的sql語句獲取的數據范圍有多大了,還有是否根據分區鍵為條件來鎖定范圍(where條件是否包含分區鍵),如果是獲取全表數據,這幾個的排序是分布的磁碟越多讀取能力越快,表空間個數以及數據文件個數多少根sql執行並發有關,並發越大數據文件越多越好,分區和不分區的區別是:分區表可以針對分區來鎖定更小范圍的數據,從而減少不必要的數據塊掃描,也就是說如果前提條件相同,只是根據分區鍵來獲取部分數據,分區表就是撒手鐧。
❾ oracle具體怎麼分區
你說的是oracle分區表吧,一般數據量大的表格採用到此功能,一個表上千萬數據以上。以下例子,分區創建需要有條件,如時間,語法可詳見metalink
CREATE TABLE T_NEW (ID NUMBER PRIMARY KEY, TIME DATE)
PARTITION BY RANGE (TIME)
(PARTITION P1 VALUES LESS THAN (TO_DATE('2005-7-1', 'YYYY-MM-DD')),
PARTITION P2 VALUES LESS THAN (MAXVALUE));
❿ oracle分區是怎樣優化資料庫的
1、1、調整數據結構的設計。這一部分在開發信息系統之前完成,程序員需要考慮是否使用ORACLE資料庫的分區功能,對於經常訪問的資料庫表是否需要建立索引等。
2、2、調整應用程序結構設計。這一部分也是在開發信息系統之前完成,程序員在這一步需要考慮應用程序使用什麼樣的體系結構,是使用傳統的Client/Server兩層體系結構,還是使用Browser/Web/Database的三層體系結構。不同的應用程序體系結構要求的資料庫資源是不同的。
3、3、調整資料庫SQL語句。應用程序的執行最終將歸結為資料庫中的SQL語句執行,因此SQL語句的執行效率最終決定了ORACLE資料庫的性能。ORACLE公司推薦使用ORACLE語句優化器(Oracle Optimizer)和行鎖管理器(row-level manager)來調整優化SQL語句。