Tag: Oracle

  • 九月中秋Cisco,Oracle認證擬真試題七五折優惠

    九月中秋購買Cisco, Oracle認證擬真試題可以享受七五折優惠,折價券為moon,考生一定要記住哦 考生購買其他認證擬真試題可以享受八折優惠,八折折價券為sep,考生在九月購買認證學習資料及擬真試題是非常合算的 詳情請參照優惠活動:http://www.killtest.net/promotion.asp

  • 如何學習Oracle認證呢?

    如何學習Oracle認證呢?首先需要瞭解oracle認證分為哪些認證。Oracle分兩大塊,一塊是開發,一塊是管理如Oracle JAVA 1Z0-851考試。開發主要是寫寫存儲過程、觸發器什麼的,還有就是用Oracle開發工具做form。有點類似於程式師,需要有較強的邏輯思維和創造能力,個人覺得會比較辛苦,是青春飯;管理則需要對Oracle資料庫的原理有深刻的認識,有全域操縱的能力和緊密的思維,責任較大,因為一個小的失誤就會down掉整個資料庫,相對前者來說,後者更看重經驗。

  • Oracle優化器的優化方式

    Oracle是世界領先的信息管理軟件開發商,因其復雜的關系數據庫產品而聞名。本文介紹Oracle優化器,它是壹個非常好用的工具。Oracle在執行壹個SQL之前,首先要分析壹下語句的執行計劃,然後再按執行計劃去執行。分析語句的執行計劃的工作是由優化器(Optimizer)來完成的。   不同的情況,壹條SQL可能有多種執行計劃,但在某壹時點,壹定只有壹種執行計劃是最優的,花費時間是最少的。相信妳壹定會用Pl/sql Developer、Toad等工具去看壹個語句的執行計劃,不過妳可能對Rule、Choose、First rows、All rows這幾項有疑問,因為我當初也是這樣的,那時我也疑惑為什麽選了以上的不同的項,執行計劃就變了?   1、Oracle優化器的優化方式   Oracle優化器共有兩種的優化方式,即基於規則的優化方式(Rule-Based Optimization,簡稱為RBO)和基於代價的優化方式(Cost-Based Optimization,簡稱為CBO)。   A、RBO方式:優化器在分析SQL語句時,所遵循的是Oracle內部預定的壹些規則。比如我們常見的,當壹個where子句中的壹列有索引時去走索引。   B、CBO方式:依詞義可知,它是看語句的代價(Cost)了,這裏的代價主要指Cpu和內存。優化器在判斷是否用這種方式時,主要參照的是表及索引的統計信息。統計信息給出表的大小 、有少行、每行的長度等信息。這些統計信息起初在庫內是沒有的,是妳在做analyze後才出現的,很多的時侯過期統計信息會令優化器做出壹個錯誤的執行計劃,因些我們應及時更新這些信息。在Oracle8及以後的版本,Oracle列推薦用CBO的方式。   我們要明了,不壹定走索引就是優的 ,比如壹個表只有兩行數據,壹次IO就可以完成全表的檢索,而此時走索引時則需要兩次IO,這時對這個表做全表掃描(full table scan)是最好的。   2、Oracle優化器的優化模式(Optermizer Mode)   優化模式包括Rule,Choose,First rows,All rows這四種方式,也就是我們以上所提及的。如下我解釋壹下:   Rule:不用多說,即走基於規則的方式。   Choolse:這是我們應觀註的,默認的情況下Oracle用的便是這種方式。指的是當壹個表或或索引有統計信息,則走CBO的方式,如果表或索引沒統計信息,表又不是特別的小,而且相應的列有索引時,那麽就走索引,走RBO的方式。   First Rows:它與Choose方式是類似的,所不同的是當壹個表有統計信息時,它將是以最快的方式返回查詢的最先的幾行,從總體上減少了響應時間。   All Rows:也就是我們所說的Cost的方式,當壹個表有統計信息時,它將以最快的方式返回表的所有的行,從總體上提高查詢的吞吐量。沒有統計信息則走基於規則的方式。   3、如何設定選用哪種優化模式   ◆A、Instance級別   我們可以通過在init.ora文件中設定OPTIMIZER_MODE=RULE、OPTIMIZER_MODE=CHOOSE、OPTIMIZER_MODE=FIRST_ROWS、OPTIMIZER_MODE=ALL_ROWS去選用3所提的四種方式,如果妳沒設定OPTIMIZER_MODE參數則默認用的是Choose這種方式。   ◆B、Sessions級別   通過SQL> ALTER SESSION SET OPTIMIZER_MODE=;來設定。   ◆C、語句級別   這些需要用到Hint

  • Oracle公司-全球最大的信息管理軟件及服務供應商

    Oracle公司是全球最大的信息管理軟件及服務供應商,成立於1977年,總部位於美國加州 Redwood shore。2000年(99年6月到2000年5月)營業額達101億美元,再創Oracle公司銷售額歷史新高,比去年增長了13億美元,盈利增長61%,達到21億美元。Oracle公司現有員工超過三萬六千人,服務遍及全球145個國家。 Oracle公司擁有世界上唯壹壹個全面集成的電子商務套件Oracle Applications R11i,它能夠自動化企業經營管理過程中的各個方面,深受用戶的青睞,促使Oracle應用軟件在2000財年第四季度的銷售額達4.47億美元,與 SAP公司的同期應用軟件銷售額3.52億美元相比,多出近1億美元,這壹事實表明,Oracle已經是世界最大的應用軟件供應商。Oracle電子商務套件涵蓋了企業經營管理過程中的方方面面,雖然它在不同的方面分別面對不同的競爭對手,而Oracle電子商務解決方案的核心優勢就在於它的集成性和完整性,用戶完全可以從Oracle公司獲得任何所需要的應用功能,更重要的是,它們具有壹致的基於Internet技術的應用體系結構,而如果用戶想從其它廠商處獲得Oracle電子商務所提供的完整功能,不僅需要從多家廠商分別購買不同的應用,而且需要另請咨詢公司把這些不同的應用裝配起來,還必須確保它們能夠協同地工作。

  • 學好Oracle的六條建議

    Oracle公司頒布並實施的一項權威的專業技術標準,它是專為認證那些能夠滿足對Oracle核心產品的服務與支持,並具有嫻熟的操作能力與廣泛理論知識的專業人士。一經認證,在行業內的專業資格將被確認,從而使個人或企業更具競爭實力。一次性通過Oracle認證專家計劃包含了兩個目前IT行業十分熱門的認證角色,即數據庫管理員(DBA Atabase Administrator)和應用程序開發員(DEV Application Developer)。 Oracle認證這一方面是由於Oracle產品的特殊性,作為全球最大的數據庫廠商,Oracle在行業中有著不容置疑的地位,而數據庫又是整個IT行業中的關鍵和核心應用,特別是大型企業級數據庫,更是高端中的高端。 Oracle的最新認證體系包括三個層次:Oracle Certified Associate (OCA),Oracle Certified Professional (OCP)和Oracle Certified Master (OCM) 1、如果有壹定的數據庫基礎,知道SQL是怎麽回事,即使寫不出來簡單的SQL,但可以看懂它們,妳就可以跳到2。否則請先看壹下數據庫基礎和SQL語言,不需要很深,更不需要去記憶那些復雜的SQL命令,這些可以留在以後邊應用邊學習、記憶。   2、要想學好ORACLE,首先要學習ORACLE的體系結構,現在妳不需要深入理解它們,但要分清幾個關鍵的概念:   instance&database, memory structure,process&those files,such as data file, control file,init parameter file etc以及database ,tablespace,data file和tablespace,segmnet,extent & block它們之間的關系。當然還要分清undo tablespace & redo log file等,對於很多初學者來說,能夠對這些概念有個較為清晰的認識並不是壹件容易的事,而這些並非Oracle的全部。   3、有關Oracle的壹些基本概念,下面要學習的是壹些簡單的的實際操作,就是如何去管理Oracle數據庫,當然不是管理全部的Oracle。在此過程中妳將對SQL和Oracle體系結構有個更深入的了解。   4、到了這壹步妳基本上算是初步掌握了ORACLE,下面將要根據妳的方向來具體學習其它的ORACLE知識了。如果妳是開發人員,則需要更多地去學習PL/SQL以及DEVELOPER,而這將是壹門新的課程。如果妳是壹名DBA,請繼續。   5、現在妳可以根據自己的實際情況,進行有選擇的學習,也就是說下面的內容沒有特別順序要求。可以選擇深入學習ORACLE的管理、備份與恢復、性能調整、網絡等。當然在學習這些知識的過程中,如果有實際的工作更好,這樣妳可以在實際中成長,學會TROUBLE SHOOTING。   6、當然在學習的過程中,妳可以在網站或論壇中與他人進行交流,可以看別人的壹些經驗文章,也可以自己寫壹些心得體會。技術進步的本身就是經驗的積累和提煉過程,希望大家共同成長,歡迎大家相互交流。

  • 參加Oracle認證的兩種考試方式

    對Oracle認證感興趣的學員,壹般會采取下面兩種流行的參考方式:   1、直接考OCP   Oracle正式授權的培訓合作夥伴為三種,即OAEP、WDP、Reseller.其中WDP(人力資源合作夥伴)是主要針對個人市場的培訓合作夥伴,WDP的培訓價格通常僅為面向企業培訓價格的二分之壹到三分之壹。   Oracle公司對正式授權的WDP培訓合作夥伴要求十分嚴格,這樣的原廠培訓收費也是十分驚人的。8000-14000人民幣的費用讓很多人寄希望於企業提供培訓機會。因此很多用戶選擇了下面更優惠的學習方式。   2、從OCA再到OCP   考下OCP課程的前兩門課程,是可以得到Oracle公司頒發的OCA證書的,證明考生已經擁有管理Oracle數據庫的專業能力,不少人采取了這樣壹種先考OCA,以後再考OCP的策略。   如此壹來就能先得到就業的機會,而錄用的公司壹般會在壹定時間後給學員提供原廠培訓的費用,OCP考試的費用就有了著落,此時再考慮參加更為實際。由於OCA的培訓難度並不是高不可攀,故此多數人都選擇了遠程培訓。

  • 數據庫查詢的小技巧

    數據查詢,是數據庫操作中最主要的功能之壹;有時候數據庫查詢性能的好壞,直接關系到數據庫的運行效率,關系到數據庫的選型。下面筆者不談大道理,只是對其中對壹些平時大家容易忽略的查詢小技巧做壹些總結。或許大家可能正在為此犯愁呢?   第壹個技巧:利用連接符連接多個字段   如在員工基本信息表中,有員工姓名、員工職位、出身日期等等。如果現在視圖中這三個字段顯示在同壹個字段中,並且中間有分割符。如我現在想顯示的結果為“經理Victor出身於1976年5月3日”。這該如何處理呢?其實,這是比較簡單的,我們可以在Select查詢語句中,利用連接符把這些字段連接起來。   如可以這麽寫查詢語句:   SELECT員工職位 ||’ ’ ||員工姓名||’出身於’||出身日期 as 員工出身信息 FROM 員工基本信息表;   通過這條語句就可以實現如上的需求。也就是說,我們在平時查詢中,可以利用||連接符把壹些相關的字段連接起來。這在報表視圖中非常的有用。如筆者以前在設計圖書館管理系統的時候,在書的基本信息處有圖書的出版社、出版序列號等等內容。但是,有時會在打印報表的時候,需要把這些字段合並成壹個字段打印。為此,就需要利用這個連接符把這些字段連接起來。而且,利用連接符還可以在字段中間加入壹些說明性的文字,以方便大家閱讀。如上面我在員工職位與員工姓名之間加入了空格;並且在員工姓名與出身日期之間加入了出身於幾個註釋性的文字。這些功能看起來比較小,但是卻可以大大的提高內容的可讀性。這也是我們在數據庫設計過程中需要關註的壹個內容。   總之,令後采用連接符,可以提高我們報表的可讀性於靈活性。   第二個技巧:取消重復的行   如在人事管理系統中,有員工基本信息基本表。在這張表中,可能會有部門、職位、員工姓名、身份證件號碼等字段。若查詢這些內容,可能不會有重復的行。但是,我若想知道,在公司內部設置了哪些部門與職位的時候,並且這些部門與職位配置了相關人員。此時,又該如何查詢呢?   若我現在直接查詢部門表,其可以知道系統中具體設置了哪些部門與職位。但是,很有可能這些部門或者職位由於人事變動的關系,現在已經沒有人了。所以,這裏查詢出來的是所有的部門與職位信息,而不能夠保證這個部門或者職位壹定有職員存在。也就是說,這不能夠滿足於我們上面的要求。   若我現在直接從員工信息表中查詢,雖然可以保證所查詢出來的部門與職位信息,壹定有員工信息的存在。但是,此時查詢出來的部門與職位信息會有重復的行。如采購部門分工合作,可能會有采購采購小組長。此時,在查詢出來的部門與職位的信息中,就會有三條重復的記錄。   所以,以上兩種處理方式,都不能夠百分之百的滿足企業用戶的需求。此時,我們其實可以利用壹個DISTINCT函數,來消除其中查詢出來的重復行。   如我們可以利用SELECT DISTINCT 部門信息,職位信息 FROM 員工基本信息表。通過這條加了DISTINCT約束的查詢語句,不但可以查詢出所有有員工的職位與部門信息,而且,會把重復的記錄過濾掉,從而提高可閱讀性。   所以,在數據庫設計過程中,特別是在查詢語句的使用中,這個函數特別有用。   第三個技巧:勤用WHERE語句   我們都知道,數據庫查詢效率高不高,是我們評價數據庫設計好壞的壹個重要標準。毋庸置疑,在數據庫查詢中勤用Where條件語句,是提高數據庫查詢性能的壹個很重要的手段之壹。特別是在設計到比較大的表中查詢符合條件的記錄過程中,利用WHERE條件語句加以限制,可以大幅度的提高查詢的響應速度。   如在圖書館管理系統中,現在有人想查詢“註冊會計師”輔導用書的時候,雖然不在書的類別或者名稱中輸入“註冊會計師”,先查詢出全部的紀錄,然後再壹條條的看是否有相關的書籍信息,也是可行的。但是,這麽處理的話,壹方面系統響應的速度會非常的慢,因為裏面記錄很多。另壹方面,查詢的結果看起來也會非常的頭疼。   其實,我們只需要在查詢中加入壹些查詢的參數,利用Where條件語句加以限制,則即可以提高數據庫響應的速度,也可以找出最符合用戶需求的數據。   另外,我也接觸過壹些在Oracle數據庫上設計的平臺型管理軟件,他們可以自定義相關的報表。在報表設計中,只要用戶在前臺設計平臺中,選中“大表查詢”的話,則這個平臺會在生成報表的時候,自動應用Where條件語句,以提高前臺系統從數據庫查詢數據的效率。   所以,筆者認為在Oracle數據庫系統設計中,要勤於使用Where語句。利用Where語句來提高數據庫查詢的效率。   第四個技巧:靈活使用COUNT函數   在查詢處理的時候,COUNT函數可以說是我們應用的比較多的函數之壹。如我們有時候需要統計員工的人數、統計圖書的種類數的時候,都需要使用到這個函數。不過,這個函數很多人可能會用,但是到靈活應用的地步,還是有壹點差距。   下面筆者就COUNT函數的壹些應用技巧談談自己的心得。   壹是要靈活放置COUNT函數的位置,因為利用COUNT函數統計記錄數的時候,是會考慮空行的記錄的。如在數據表中壹般有序列字段與其它的有意義字段兩類。有時候可能序列字段中有內容而其它字段中沒有內容,則在利用COUNT函數統計記錄數量的時候,會把這個空記錄也考慮進去。很明顯,則就會發生統計的錯誤。所以,這個COUNT函數該放在哪個位置上,還是比較講究的。壹般的話,筆者試建議不要放在序列號字段上,而要放在壹些關鍵的實體字段中。如統計員工人數的時候,則就可以放在員工姓名或者編號上等等。   二是靈活跟其它函數搭配使用。如在上面的例子中,筆者談到有時候用戶需要知道現在有員工編制的部門與職位有哪壹些,我們可以利用DISTINCT函數來找出具體的部門。但是,我現在只想知道有編制的部門與職位具體有多少,此時,我們也可以利用COUNT 與DISTINCT函數結合應用,找出我們所需要的數據。在COUNT函數中,可以指定ALL與DISTINCT選項。默認的情況下,是ALL選項,表示統計所有的行,其中也包括重復的行。而DISTINCT就表示只統計不重復的行。可見,COUNT函數跟其它函數搭配使用的話,可以簡化我們的查詢語句,提高查詢效率。   第五個技巧:只查詢時必須的字段   有時候,用戶不同的查詢需求都要用到同壹張表。如在員工信息表中包含了很多內容。有時候用戶想要知道正式員工有多少;管理層員工有多少;生產線員工又有哪些;或者想知道合同即將到期的員工有哪些。為此,就遇到壹個問題,因為這些內容基本上都是在同壹張表中,那是在同壹個視圖中實現,而是根據需求不同,設計不同的視圖呢?   若單從技術上考慮,兩這都是可以實現的,不會有多大的難度。但是,若是從數據庫性能上考慮在,則還是采用不同的視圖來實現不同的需求為好。   壹方面,若從安全方面講,則可以根據不同的視圖來控制相關的訪問權限。可見,把視圖細化,在權限控制上則會更加的靈活。   另壹方面,數據的查詢效率,跟數據內容的多少也有非常密切的關系。如在查詢員工合同到期信息的時候,壹般不需要員工的地址信息等等。若把這個信息也查詢出來的話,由於這個字段比較長,就會花費比較長的時間。所以,在數據庫設計中,我們要學會根據用戶不同的需求,設計不同的視圖。雖然可能這在設計的時候會比較花時間,但是,在確可以提高數據庫的性能與安全性。這筆生意還是劃得來的。