Time of Update: 2018-12-04
原帖:http://blog.csdn.net/robinson_0612/archive/2010/04/26/5529239.aspx --==========================================--Oracle執行個體和Oracle資料庫(Oracle體繫結構)--==========================================/* 對於初接觸Oracle 資料庫的人來講,很容易混淆的兩個概念即是Oracle 執行個體和Oracle
Time of Update: 2018-12-04
Oracle中,可以使用 Instr 函數對某個字串進行判斷,判斷其是否含有指定的字元。其文法為:Instr(string, substring, position, occurrence)其中string:代表源字串;substring:代表想從源字串中尋找的子串;position:代表尋找的開始位置,該參數可選的,預設為 1;預設尋找順序為從左至右。當起始位置為負數的時候,從右邊開始尋找。occurrence:代表想從源字元中尋找出第幾次出現的substring,該參數也是可選的,預設為1
Time of Update: 2018-12-04
to_date()與24小時製表示法及mm分鐘的顯示: 一、在使用Oracle的to_date函數來做日期轉換時,很多Java程式員也許會直接的採用“yyyy-MM-dd HH:mm:ss”的格式作為格式進行轉換,但是在Oracle中會引起錯誤:“ORA 01810 格式代碼出現兩次”。如:select to_date( '2005-01-01 13:14:20 ', 'yyyy-MM-dd HH24:mm:ss ') from
Time of Update: 2018-12-04
ORACLE設定主鍵是不會自動增加的,這個和SqlServer是不一樣的,在oracle中所以必須用 序列 和 觸發器 來完成主鍵的遞增。1建立資料表create table Test_Increase( userid number(10) primary key, /*建立主鍵*/ username varchar2(20) ); create table Test_Increase(
Time of Update: 2018-12-04
CASE運算式可以在SQL中實現if-then-else型的邏輯,而不必使用PL/SQL。CASE的工作方式與DECODE()類似,但應該使用CASE,因為它與ANSI相容。CASE有兩種運算式:1. 簡單CASE運算式,使用運算式確定傳回值.文法:CASE search_expressionWHEN expression1 THEN result1WHEN expression2 THEN result2...WHEN expressionN THEN resultNELSE default_
Time of Update: 2018-12-04
轉帖於:http://www.idb-stock.net/idb/2011/06/23/184.html session id 在一些審計、統計分析中還是非常用的,本文介紹常見的擷取oracle session id的方法:1.從v$mystat視圖擷取oracle當前會話的session id(sid):view plaincopy to clipboardprint?select sidfrom v$mystatwhere rownum = 1;select sid from
Time of Update: 2018-12-04
首先查看錶空間的名字和所屬檔案 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; 1.增加資料檔案 ALTER TABLESPACE ULTIMUSDB ADD DATAFILE '/oracle/oradata/db/ULTIMUSDB02.dbf' SIZE 1000M;
Time of Update: 2018-12-04
轉貼於:http://mofeichen.iteye.com/blog/839111C:\Documents and Settings\Administrator>sqlplus /nolog SQL*Plus: Release 10.1.0.2.0 - Production on 星期六 12月 26 11:08:34 2010 Copyright (c) 1982, 2004, Oracle. All rights reserved. SQL> conn /as
Time of Update: 2018-12-04
簡要比較: replace:字串層級的代替 如:SELECT REPLACE('acdd','cd','ef') FROM dual; →aefd translate:字元層級的代替 如:SELECT TRANSLATE('acdd','cd','ef') FROM dual; →aeff 分別詳解: replace: 文法:REPLACE ( char , search_string [, replacement_string] )
Time of Update: 2018-12-04
談談如何徹底卸載Oracle? 轉帖與:http://www.diybl.com/course/7_databases/database_other/20090207/154900.html 常用Oracle資料庫的同仁都知道,Oracle經常會莫名的出現一些錯誤,導致資料庫無法正常啟動或使用。 經過對出現這些問題的解決,後來找到了問題的根源,也就是再次安裝Oracle資料庫時,未對之前安裝的Oracle進行徹底的卸載所導致。下面我就詳細談談如何才能徹底卸載Oracle資料庫
Time of Update: 2018-12-04
轉貼於:http://www.linuxwind.org/html/oracle-10g-em-startup-repair.html1.修複更換主機名稱,ip後EM無法啟動前提條件:已啟動oracle,監聽程式cd $ORACLE_HOME/network/admin/編輯listener.ora和tnsnames.ora將檔案中HOST=欄位的IP或者主機名稱修改為你需要的主機名稱,IP。emca -repos recreate輸入以下資訊: 資料庫 SID: xxxx
Time of Update: 2018-12-04
使用Oracle外部表格來查詢分析警告日誌Oracle中的警告日誌按照時間發生順序記錄了Oracle資料庫出現的內部錯誤,以便通過這個警告日誌提醒使用者,使用者通過查詢警告日誌來分析Oracle出現的內部錯誤,來解決和防範Oracle的致命錯誤。監控警告日誌是每個DBA日常必需的工作,警告日誌存放在初始化參數檔案中有bdump參數指定位置上。Oracle
Time of Update: 2018-12-04
解析Oracle資料掃描——Oracle SQL查詢最佳化(1)資料讀取方式1、 Oracle資料讀取操作:1.1資料讀取操作類型: 在任何的資料庫中,當我們發起一個SQL語句進行資料查詢時,SQL執行引擎為了能夠返回我們需要的資料,都會進行資料掃描。這個掃描可能直接發生在特定的記憶體空間中,也可能發生在存放資料的磁碟上。但無論如何歸結起來,資料掃描的類型大致可以分為兩種,即順序掃描和隨機讀取。
Time of Update: 2018-12-04
解析Oracle資料掃描 Oracle SQL查詢最佳化(2)2、 提高局部範圍資料掃描執行效能的原理:2.1查詢條件的類別與作用: 當我們發起一個帶有條件的查詢SQL語句時,通常會賦予該語句多個查詢條件,在這些查詢條件中,通常會有一個或者幾個查詢條件會作為資料檢索的發起者,這些作為發起者的查詢條件稱為“驅動查詢條件”;同時那些不作為資料檢索發起者的查詢條件,在整個查詢資料的過程中,只會起到過濾由驅動查詢條件所決定的資料範圍內資料的作用,這些查詢條件就稱為“過濾查詢條件”。
Time of Update: 2018-12-04
過濾型局部範圍掃描 在日常應用開發過程中,經常會遇到需要判斷滿足某些查詢條件的集合是否存在,其實這種操作本質上是一種特殊的過濾操作,既需要用一個集合為源,另一個集合為判斷標準,使用這個判斷標準作為過濾器去過濾源集合。 在執行這種操作過程中,最理想的執行方式是當遇到第一個滿足條件的記錄時就停止整個執行過程返回結果,因為此時已經確認了滿足條件的集合的存在,如果此時批量數組已經被填充滿,那麼就可以作為結果返回了。這其實是在執行這種過濾操作的過程中使用了局部範圍掃描。
Time of Update: 2018-12-04
通過分離SQL語句實現局部範圍資料掃描 通常情況下應該盡量使實現某個功能的SQL語句的各個組成部分放在一起運行比較有效。但是在少數的情況下,使用將SQL分離的方法反倒比較有效。這種情況主要存在於,經常對具有1:M關係的兩張表進行查詢時,起到對“M”方過濾條件的資料來自於”1”方。通常“M”方的資料會比較多的可能性較大,如果此時為“1”方的表賦予了一個對應資料範圍較大的查詢條件,則在整個資料處理過程中,就需要付出較大的代價。如下面的語句樣本:Select
Time of Update: 2018-12-04
靈活應用ROWNUM虛擬列 Rownum並不是表中實際存在的物理列,而是一個可以被使用在任何SQL語句中的虛擬列。如果能夠正確的理解Rownum概念和特性,那麼就可以將其應用在Where條件中,引導最佳化器只處理指定的行數,因此可見這屬於局部範圍掃描範疇。但是如果不瞭解Rownum的特性就草率的使用它,則有可能無法輸出期望的結果,同時也無法按照設想的資料掃描方式運行。現在討論一下如何利用Rownum的特性實現局部範圍掃描。特性一:應保證資料範圍足夠大。看如下樣本語句: Select
Time of Update: 2018-12-04
發現只通過索引就能擷取查詢資料的機會
Time of Update: 2018-12-04
之前我們討論了在資料庫中資料讀取操作的類型,重點討論了對資料讀取操作大為有益的局部範圍掃描的資料讀取方式,同時還探討了資料庫最佳化器模式對於啟用局部範圍掃描的影響,以及啟用局部範圍掃描的前提下最佳化器設定的原則,之後我們通過探討一個語句中查詢條件的類別及其所起到的作用,並通過查詢條件的類別和作用,得出了提升局部範圍資料掃描的原則,即“局部範圍掃描效能提升策略描述矩陣”。
Time of Update: 2018-12-04
join用法 條件串連(join) T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 ON boolean_expression T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 USING ( join column list ) T1 NATURAL { [INNER] | { LEFT | RIGHT | FULL } [OUTER] }