出版時(shí)間:2009.9 出版社:人民郵電出版社 作者:[澳] Connor McDonald,[加] Chaim Katz,[美] Christopher Beck,[美] Joel R. Kallman,[美] David C. Knox 頁數(shù):439 字?jǐn)?shù):685000 譯者:蔡偉毅
Tag標(biāo)簽:無
前言
最近,我在一家網(wǎng)上書店搜索關(guān)于PL/SQL的圖書,結(jié)果返回38條記錄,還不包括這本書。38本書!據(jù)我所知,它們中沒有一本書可以作為風(fēng)靡全球的暢銷書擺放于哈利?波特那些書的旁邊,那么究竟是什么鼓舞著我們這群作者走到一起寫出關(guān)于這個(gè)主題的第39本書呢? 原因是,無論可用的圖書如何過剩,我們?nèi)匀辉贠racle應(yīng)用中遇到了許多低劣或陳舊的PL/SQL代碼。我個(gè)人曾經(jīng)使用過世界各地的許多Oracle系統(tǒng),雖然應(yīng)用程序、架構(gòu)和方法迥異,但我發(fā)現(xiàn)幾乎所有這些系統(tǒng)中都有兩個(gè)共同點(diǎn)。它們要么沒有用到Oracle特有的功能,要么是以無計(jì)劃和不太理想的方式在使用。這種情況在PL/SQL上最為明顯,在我遇到的很多系統(tǒng)中,PL/SQL被真正利用的很少,大部分都是誤用。 至少部分問題在于大多數(shù)的PL/SOL書只關(guān)注語法。它們會(huì)展示如何編寫PL/SQL代碼以通過編譯并在系統(tǒng)上運(yùn)行(有些書進(jìn)一步提供了良好的命名標(biāo)準(zhǔn)和編程結(jié)構(gòu)的指導(dǎo)思想)。但是,就像其他編程語言一樣,會(huì)用一門語言和用好這門語言有著天壤之別。要構(gòu)建成功的應(yīng)用程序,關(guān)鍵在于要巧妙地運(yùn)用語法知識(shí)來編寫出健壯、高效且易于維護(hù)的程序。這就是寫作本書并起這么個(gè)書名的動(dòng)機(jī)。我們不是要把你變成PL/SQL程序員,而是要把你變成一位精明的PL/SQL程序員。
內(nèi)容概要
本書旨在教授讀者寫出健壯、高效且易于維護(hù)的PL/SQL代碼。全書涵蓋了PL/SQL提供的大量功能,包括高效數(shù)據(jù)處理、安全、觸發(fā)器、DBA包以及高效的調(diào)試技術(shù)等。此外,書中含有豐富的示例,并提供了大量提示和技巧。 本書結(jié)構(gòu)清晰,示例豐富,實(shí)踐性強(qiáng),適用于DBA和數(shù)據(jù)庫開發(fā)人員。
作者簡(jiǎn)介
麥克唐納(Conner McDonald)世界著名的Oracle技術(shù)專家,Oracle認(rèn)證專家,具有十多年的Oracle系統(tǒng)開發(fā)經(jīng)驗(yàn),以精深的PL/SQL造詣享譽(yù)業(yè)界。他的個(gè)人網(wǎng)站www.oracledba.co.uk是極具影響的Oracle技術(shù)資源。
書籍目錄
第1章 高效能的PL/SQL 1.1 為何使用PL/SQL 1.1.1 PL/SQL貼近數(shù)據(jù) 1.1.2 最簡(jiǎn)單的通常是最好的 1.2 什么是高效能的PL/SQL 1.2.1 性能 1.2.2 影響 1.2.3 可論證性 1.3 達(dá)到高效能 1.3.1 綁定變量和解析的代價(jià) 1.3.2 使用PL/SQL的可用特性 1.3.3 不要使用PL/SQL來做SQL的工作 1.4 小結(jié)第2章 全部打包 2.1 包的基本好處 2.1.1 包的重載 2.1.2 包中的公有變量和私有變量 2.1.3 初始化 2.1.4 信息隱藏 2.2 獨(dú)立的過程和依賴危機(jī) 2.3 打破依賴鏈 2.4 使用遞歸 2.5 人們?yōu)楹伪芏挥冒? 2.5.1 忽視分離的好處 2.5.2 這是個(gè)包,不是庫 2.6 何時(shí)不能使用包 2.7 發(fā)布包 2.7.1 路徑跟蹤編程變得簡(jiǎn)單 2.7.2 其他有用的例程 2.7.3 檢索DDL 2.7.4 DBMS ROWID的有趣應(yīng)用 2.7.5 后臺(tái)任務(wù) 2.8 小結(jié)第3章 令人困惑的游標(biāo) 3.1 顯式游標(biāo)與隱式游標(biāo) 3.1.1 單行的讀取 3.1.2 多行處理 3.1.3 TOP-N處理 3.1.4 結(jié)論 3.2 跨架構(gòu)的游標(biāo)管理 3.2.1 游標(biāo)變量 3.2.2 游標(biāo)表達(dá)式 3.3 小結(jié)第4章 高效數(shù)據(jù)處理 4.1 控制數(shù)據(jù)類型 4.1.1 使用%TYPE屬性 4.1.2 使用包集中控制數(shù)據(jù)類型 4.1.3 避免隱式數(shù)據(jù)類型轉(zhuǎn)換 4.2 從字段到行——使用%ROWTYPE 4.3 從記錄到對(duì)象 4.3.1 對(duì)象類型 4.3.2 用集合擴(kuò)展runstats 4.4 在PL/SQL中使用集合的動(dòng)機(jī) 4.5 用集合來批處理 4.5.1 批收集 4.5.2 批量綁定 4.6 在PL/SQL程序間傳遞變量 4.6.1 將%TYPE和%ROWTYPE作為參數(shù)傳遞 ……第5章 PL/SQL優(yōu)化技巧第6章 觸發(fā)器第7章 DBA包第8章 安全包第9章 Web包第10章 PL/SQL調(diào)試附錄A 構(gòu)建DEBUG
章節(jié)摘錄
第1章 高效能的PL/SQL 本章討論P(yáng)L/SQL的效能。這里故意避開術(shù)語“性能”,因?yàn)樾懿恢皇切阅?。我們將?zhǔn)確地定義什么是“高效能的PL/SQL”,并解釋如何使PL/SQL代碼符合這個(gè)定義。 當(dāng)恰到好處地使用PL/SQL時(shí),可以構(gòu)建出性能良好、便于日后修改并可以應(yīng)付大量用戶的應(yīng)用程序。PL/SQL應(yīng)該成為基于數(shù)據(jù)庫的應(yīng)用程序開發(fā)必選的開發(fā)語言。因此,當(dāng)在公司里使用Oracle時(shí),應(yīng)該鼓勵(lì)將PL/SQL作為應(yīng)用程序的不可或缺的組件。 1.1 為何使用PL/SQL 在講述與PL/SQL效能有關(guān)的重要問題之前,先來看一下開發(fā)者這幾年經(jīng)常問的問題:“我真的需要使用PL/SQL嗎?” 自從上世紀(jì)80年代末起,人們一直在忙于使應(yīng)用程序擺脫大型機(jī),首先轉(zhuǎn)向客戶-服務(wù)器應(yīng)用(client-server),然后又轉(zhuǎn)向基于Web的解決方案,應(yīng)用程序的數(shù)據(jù)(保存于Oracle數(shù)據(jù)庫中)已經(jīng)遠(yuǎn)遠(yuǎn)脫離了應(yīng)用程序代碼本身?! ∫蚨?dāng)存儲(chǔ)過程第一次出現(xiàn)于Oracle版本7服務(wù)器端的時(shí)候,其賣點(diǎn)就是作為在慢速網(wǎng)絡(luò)中改善客戶/服務(wù)器(client/server)應(yīng)用程序性能的解決方案。我們摒棄了從客戶端應(yīng)用程序發(fā)送很多離散數(shù)據(jù)庫調(diào)用的做法,而將這些調(diào)用綁定于服務(wù)器端的PL/SQL存儲(chǔ)過程中,客戶端只需要發(fā)送一個(gè)簡(jiǎn)單的調(diào)用,這樣就可以減少對(duì)網(wǎng)絡(luò)速度的依賴?! ∵@是對(duì)PL/SQL價(jià)值的嚴(yán)重貶損(讓我們面對(duì)它吧,我們真不希望貶損Oracle的任何一個(gè)特點(diǎn))。更糟糕的是,它導(dǎo)致了一個(gè)錯(cuò)誤觀點(diǎn):如果你不準(zhǔn)備將應(yīng)用程序運(yùn)行于廣域網(wǎng),就不需要PL/SQL。但本書將反復(fù)證明,在Oracle項(xiàng)目中不使用PL/SQL就等于編程時(shí)將一只手綁在后背上。然而,在一個(gè)項(xiàng)目中,你首先要面臨的難題可能并不是如何保證高效地運(yùn)用PL/SQL,而是如何說服管理者心悅誠服地使用它!
編輯推薦
《精通Oracle PL/SQL》對(duì)于Oracle技術(shù)人員而言,怎么強(qiáng)調(diào)掌握PL/SQL的重要性都不過分。但是,真正精通PL/SQL絕非易事。事實(shí)上。在現(xiàn)有的Oracle應(yīng)用程序中充斥著太多質(zhì)量不佳的PL/SQL代碼,它們要么沒有充分利用Oracle特有的功能,要么是在誤用或者濫用。這種現(xiàn)象導(dǎo)致了許多對(duì)PL/SQL本身能力不公正的批評(píng)?! 毒∣racle PL/SQL》由全球Oracle技術(shù)專家組織0akTable Network的多位大師聯(lián)手編寫。是為PL/SQL.LT.名的名著。與市面上許多PL/SQL圖書只是紙上談兵、局限于語法和功能本身不同,《精通Oracle PL/SQL》從實(shí)戰(zhàn)出發(fā)。講述如何正確、充分地運(yùn)用語言特性,除了PUSQL的基本功能之外,也包括數(shù)據(jù)的高效處理、安全、觸發(fā)器、高效的調(diào)試技術(shù)等。作者在講解每一個(gè)特性時(shí)都輔以經(jīng)過實(shí)戰(zhàn)檢驗(yàn)的示例。更與讀者分享了大量多年積累的獨(dú)家經(jīng)驗(yàn)。有《精通Oracle PL/SQL》在手。你將學(xué)會(huì)如何充分發(fā)揮PL/SQL的巨大潛能。編寫出可靠、高效且易于維護(hù)的一流程序?! mazon五星圖書,五位世界級(jí)技術(shù)專家聯(lián)袂巨獻(xiàn);提供大量實(shí)戰(zhàn)方案;教你編寫健壯、高效且易于維護(hù)PL/SQL代碼。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載