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

Oracle數(shù)據(jù)庫的系統(tǒng)中6個經驗原則

數(shù)據(jù)庫 Oracle
本文主要介紹的是Oracle數(shù)據(jù)庫的系統(tǒng)中經常使用的相關經驗,其中包括使用索引時應注意事項 ,以及數(shù)據(jù)庫重建應注意的問題的相關問題的介紹。

以下的文章主要是對Oracle數(shù)據(jù)庫的系統(tǒng)中經常使用的相關經驗原則,本文對其分成六部分介紹,其中包括having 子句的具體用法 ,外部聯(lián)接"+"的實際應用,還有如何刪除表內重復記錄的實際操作方法 。

1.having 子句的用法

having 子句對 group by 子句所確定的行組進行控制,having 子句條件中只允許涉及常量,聚組函數(shù)或group by 子句中的列.

2.外部聯(lián)接"+"的用法

外部聯(lián)接"+"按其在"="的左邊或右邊分左聯(lián)接和右聯(lián)接.若不帶"+"運算符的表中的一個行不直接匹配于帶"+"預算符的表中的任何行,則前者的行與后者中的一個空行相匹配并被返回.若二者均不帶’+’,則二者中無法匹配的均被返回.利用外部聯(lián)接"+",可以替代效率十分低下的 not in 運算,大大提高運行速度.例如,下面這條命令執(zhí)行起來很慢

 

  1. select a.empno from emp a where a.empno not in   
  2. (select empno from emp1 where job=’SALE’);   

 

倘若利用外部聯(lián)接,改寫命令如下:

 

  1. select a.empno from emp a ,emp1 b   
  2. where a.empno=b.empno(+)   
  3. and b.empno is null   
  4. and b.job=’SALE’;   

 

可以發(fā)現(xiàn),運行速度明顯提高.

3.刪除表內重復記錄的方法

可以利用這樣的命令來刪除表內重復記錄:

 

  1. delete from table_name a   
  2. where rowid< (select max(rowid) from table_name   
  3. where column1=a.column1 and column2=a.column2   
  4. and colum3=a.colum3 and ...);   

 

不過,當表比較大(例如50萬條以上)時,這個方法的效率之差令人無法忍受,需要另想辦法(可參看拙文《電信計費中長途重復話單的技術處理》,《計算機與通信》,1999-07).

4.set transaction 命令的用法

在執(zhí)行大事務時,有時oracle會報出如下的錯誤:

 

  1. ORA-01555:snapshot too old (rollback segment too small)  

這說明oracle給此事務隨機分配的回滾段太小了,這時可以為它指定一個足夠大的回滾段,以確保這個事務的成功執(zhí)行.例如

 

  1. set transaction use rollback segment roll_abc;   
  2. delete from table_name where ...   
  3. commit;   

 

回滾段roll_abc被指定給這個delete事務,commit命令則在事務結束之后取消了回滾段的指定.

5.使用索引的注意事項

select,update,delete 語句中的子查詢應當有規(guī)律地查找少于20%的表行.如果一個語句查找的行數(shù)超過總行數(shù)的20%,它將不能通過Oracle數(shù)據(jù)庫系統(tǒng)使用索引獲得性能上的提高.

索引可能產生碎片,因為記錄從表中刪除時,相應也從表的索引中刪除.表釋放的空間可以再用,而索引釋放的空間卻不能再用.頻繁進行刪除操作的被索引的表,應當階段性地重建索引,以避免在索引中造成空間碎片,影響性能.在許可的條件下,也可以階段性地truncate表,truncate命令刪除表中所有記錄,也刪除索引碎片.

6.數(shù)據(jù)庫重建應注意的問題

在利用import進行Oracle數(shù)據(jù)庫重建過程中,有些視圖可能會帶來問題,因為結構輸入的順序可能造成視圖的輸入先于它低層次表的輸入,這樣建立視圖就會失敗.要解決這一問題,可采取分兩步走的方法:首先輸入結構,然后輸入數(shù)據(jù).命令舉例如下 (uesrname:jfcl,password:hfjf,host sting:ora1,數(shù)據(jù)文件:expdata.dmp):

 

  1. imp jfcl/hfjf@ora1 file=empdata.dmp rows=N   
  2. imp jfcl/hfjf@ora1 file=empdata.dmp full=Y buffer=64000   
  3. commit=Y ignore=Y   

 

第一條命令輸入所有Oracle數(shù)據(jù)庫結構,但無記錄.第二次輸入結構和數(shù)據(jù),64000字節(jié)提交一次.ignore=Y選項保證第二次輸入既使對象存在的情況下也能成功.

文章出自:http://www.programbbs.com/doc/class10-3.htm

【編輯推薦】

  1. 修改Oracle最大連接數(shù)的步驟有哪些
  2. Oracle EM管理 MySQL的實操方案
  3. Oracle In-Memory Undo特性淺談
  4. Oracle DRCP與PHP的不同之處
  5. Oracle 語句的優(yōu)化規(guī)則中的相關項目
責任編輯:佚名 來源: programbbs
相關推薦

2011-02-28 17:12:20

Oracle數(shù)據(jù)庫

2010-04-20 10:41:49

Oracle數(shù)據(jù)庫

2009-04-16 09:08:21

Oracle開發(fā)經驗

2010-04-19 13:56:19

Oracle數(shù)據(jù)庫服務

2010-04-22 11:34:21

Oracle數(shù)據(jù)庫

2011-03-31 09:55:59

Oracle數(shù)據(jù)庫開發(fā)技術

2010-05-05 11:40:30

Oracle數(shù)據(jù)庫

2010-04-06 18:04:09

Oracle數(shù)據(jù)庫

2017-11-07 11:52:17

數(shù)據(jù)庫Oracle隱含參數(shù)

2009-09-04 09:54:59

數(shù)據(jù)庫名

2009-07-02 00:00:00

OOPOracle

2011-03-11 15:49:52

Oracle數(shù)據(jù)庫

2018-08-10 07:50:45

數(shù)據(jù)庫數(shù)據(jù)庫設計實踐步驟

2010-04-14 08:49:43

Oracle數(shù)據(jù)庫系統(tǒng)

2011-05-26 13:36:40

Oracle數(shù)據(jù)庫時間處理

2009-07-02 14:35:00

Oracle數(shù)據(jù)庫文件

2011-05-24 14:13:20

Oracle數(shù)據(jù)庫

2010-10-27 17:11:35

oracle查詢

2010-05-05 15:45:52

Oracle數(shù)據(jù)庫

2010-10-28 16:46:23

查詢Oracle數(shù)據(jù)庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕一区二区三区精彩视频 | 黄色片网站在线观看 | 亚洲九色| 国产区一区二区三区 | 视频一区二区在线 | 成人综合视频在线 | 国产欧美一区二区三区日本久久久 | 久久久www | 一区二区三区回区在观看免费视频 | 亚洲免费在线 | 日韩在线看片 | 中文字幕乱码一区二区三区 | 成人免费在线播放视频 | 精品国产视频在线观看 | 黄网站免费在线看 | 精品一区二区三区91 | 国产精品久久av | 日韩久久久一区二区 | 国产亚洲精品美女久久久久久久久久 | 色综合一区二区三区 | 草久视频| 亚洲精品久久久一区二区三区 | 人人做人人澡人人爽欧美 | 久www | 伊人免费视频二 | 久久久久国产精品 | 国产激情视频在线 | 日韩中文字幕 | 久久一区| 国产精品久久精品 | 国产欧美综合在线 | 91一区二区三区 | 亚洲狠狠爱一区二区三区 | 人人干人人干人人干 | 欧美爱爱视频网站 | 成人免费区一区二区三区 | 亚洲精品久久久一区二区三区 | 日韩成人在线免费观看 | 黄色片亚洲 | 毛片网站在线观看 | av第一页|