涵蓋PL/SQL的各種技術細節,提供係統化的學習方案
對PL/SQL開發用到的各種技術做瞭原理分析和實戰體驗
7.8小時教學視頻,300個經典實例,2個項目案例
真正做到瞭從程序員的視角剖析PL/SQL的應用
深入淺齣地介紹PL/SQL在實際開發中的要點
提供各種實際應用場景,將知識點快速應用於實際開發
代碼精煉,注釋豐富,通過研讀代碼,便可獲得大量經驗
推薦本書姊妹篇與套裝書(請點叢書鏈接查看)
其他數據庫精品圖書推薦閱讀(請點叢書鏈接查看)
《Oracle PL/SQL從入門到精通》以麵嚮應用為原則,深入淺齣的介紹瞭oracle平颱上使用pl/sql語言進行數據庫開發的技術。通過大量的示例,詳細介紹瞭pl/sql的語言特性、使用技巧,同時配以2個在實際工作中的示例來深入的剖析瞭pl/sql進行oracle開發的方方麵麵。
《Oracle PL/SQL從入門到精通》附帶1張dvd光盤,內容為作者為《Oracle PL/SQL從入門到精通》錄製的全程語音教學視頻及本書所涉及的源代碼。
《Oracle PL/SQL從入門到精通》共分為20章,分為5大篇。涵蓋的內容主要有pl/sql語言基礎、開發環境、變量與類型、控製語句、數據錶的管理和查詢、數據錶的操縱、使用pl/sql的記錄與集閤、各種內置函數、遊標、事務處理、異常處理、子程序、包、麵嚮對象的開發等等技術點。通過示例性的代碼,由淺入深,詳細介紹瞭每一個技術要點在實際工作中的應用,對於各種技術要點的應用場閤進行瞭細緻的分析。
《Oracle PL/SQL從入門到精通》適閤於使用pl/sql進行應用程序開發的人員、對軟件開發有興趣的學生及愛好者;對數據庫管理員、企業it運維人員也具有很強的指導作用。
超值DVD光盤
《Oracle PL/SQL從入門到精通》配套教學視頻
《Oracle PL/SQL從入門到精通》源代碼
15.5小時Oracle入門教學視頻
丁士鋒,2001年畢業於國防科技大學計算機學院。有多年的數據庫軟件開發與設計經驗,深入理解數據庫係統在企業信息化進程中的應用。多次主導與架構基於Oracle、SQL Server及IBM DB2等大型數據庫係統的集團式信息管理係統建設。多次參與數據庫平颱的搭建與各種核心數據庫程序代碼的實現。著有《Oracle PL/SQL從入門到精通》、《《精通C# 5.0與.NET 4.5高級編程:LINQ、WCF、WPF和WF》、《網頁製作與網站建設實戰大全》等多本廣受讀者好評的計算機暢銷圖書。
丁士鋒,2001年畢業於國防科技大學計算機學院。有多年的數據庫軟件開發與設計經驗,深入理解數據庫係統在企業信息化進程中的應用。多次主導與架構基於Oracle、SQL Server及IBM DB2等大型數據庫係統的集團式信息管理係統建設。多次參與數據庫平颱的搭建與各種核心數據庫程序代碼的實現。著有《Oracle PL/SQL從入門到精通》、《《精通C# 5.0與.NET 4.5高級編程:LINQ、WCF、WPF和WF》、《網頁製作與網站建設實戰大全》等多本廣受讀者好評的計算機暢銷圖書。
第1章Oracle11g數據庫係統
Oracle數據庫係統是世界領先的數據庫管理係統,Oracle數據庫以其功能強大和配置靈活而著稱,同時也因有一定的操作難度,讓很多初學者望而卻步。本書將由淺入深,以簡單易懂的示例帶領讀者撥開Oracle的神秘麵紗。
目前在Oracle世界主要有兩類人員:一類是Oracle數據庫管理人員,簡稱DBA;一類是Oracle開發人員。OracleDBA主要的工作是負責日常的數據庫維護和性能優化管理。由於Oracle係統較龐大、復雜,要成為一名閤格的DBA,需要掌握的知識較多,比如要掌握Oracle體係結構和性能優化等方麵的知識,相對其他數據庫而言入門門檻較高,但是薪酬一般也較豐厚。Oracle開發人員的主要工作是使用Oracle提供的SQL語言和PL/SQL結構化程序設計語言操作數據庫,主要職責是操縱Oracle數據庫對象,不需要對Oracle係統結構有深入瞭解,入門較容易。當Oracle開發人員積纍瞭一定的開發知識後,可以通過學習OracleDBA方麵的知識嚮數據庫管理員轉型。
1.1關係型數據庫係統介紹
1970年6月,IBM公司的研究員E.F.Codd博士(中文名:埃德加·弗蘭剋·科德),發錶瞭名為“大型共享數據庫的關係模型”的論文,受到瞭學術界和産業界的高度重視和廣泛響應,使得關係型數據庫係統很快成為數據庫市場的主流。E.F.Codd博士被譽為“關係數據庫之父”,其照片如圖1.1所示。
圖1.1關係數據庫之父埃德加·弗蘭剋·科德
1.1.1什麼是關係型數據模型
關係型數據庫簡而言之就是使用關係或二維錶存儲信息。以公司的人員信息管理為例,為瞭存儲公司內部的員工信息,人事部門一般會建一份列錶,在公司未引入信息化管理係統時,大多數人事職員會使用Excel來保存員工信息,例如圖1.2是一份簡單的人員信息列錶的Excel文件。
這種Excel存儲數據的方式,將人員的所有信息都包含在一張錶中,隨著Excel中的欄位和記錄數越來越多,這份人員信息錶會變得越來越繁雜,這種存儲數據的方式稱為平麵文件數據模型。
為瞭簡化修改與維護的復雜性,關係型數據庫設計人員通過使用實體關係模型進行數據庫建模,例如人員信息錶可以分為員工錶和部門錶,通過部門編號進行關聯,ER模型如圖1.3所示。
圖1.2Excel人員信息列錶圖1.3人員信息錶ER關係模型
由圖1.3中可以看到,通過將員工和部門分彆存儲在不同的二維錶格中,使用主鍵(PK)和外鍵(FK)進行關聯,使得獲取和維護數據變得更容易,這就是關係型數據模型。上述ER圖的3個關鍵組件分彆如下所示。
*實體:需要瞭解的信息,比如部門和員工信息。
*屬性:一般也稱為列或字段,描述實體必須或可選的信息,比如員工錶中的工號和姓名等。
*關係:實體之間指定的關聯,比如員工的部門編號關聯到瞭部門錶的編號屬性。
關係型數據模型還涉及一些較復雜的組成元素,涉及較多的數學知識,有興趣的讀者可以參考一些理論性的讀物。
1.1.2數據庫係統範式
為瞭規範化關係型數據模型,關係型數據庫係統在設計時必須遵循一定的規則,這種規則稱為關係型數據庫係統範式。瞭解範式是每個數據庫設計或開發人員必須具備的基本功,範式的主要目的是降低數據冗餘,設計結構閤理的數據庫。目前較常用的範式有如下3種。
1.第一範式(1NF):字段必須具有單一屬性特性,不可再拆分
如果字段中的值已經是無法再分割的值,則符閤第一範式,即1NF。例如,在員工錶中,姓名字段一般僅包含員工的正式姓名,這是符閤第一範式的,但是如果要在姓名字段中包含中文名、英文名、昵稱、彆名等信息,就意味著姓名字段是可再拆分的。因此員工名的設計可以如圖1.4所示。
圖1.4修改後的員工錶以匹配1NF範式
2.第二範式(2NF):錶要具有唯一性的主鍵列
第二範式(2NF)要求數據庫錶中的每個實例或行必須可以被唯一地區分,為實現區分通常需要為錶加上一個列,以存儲各個實例的唯一標識。第二範式是在第一範式的基礎上的進一步增強,在數據庫設計時一般使用唯一性主鍵來唯一地標識行。比如在員工錶中定義瞭以工號作為主鍵,因為公司員工的工號通常用來識彆某個員工個體,不能進行重復;在部門錶中通過部門編號作為主鍵,來唯一地區分一個部門。
3.第三範式(3NF):錶中的字段不能包含在其他錶中已齣現的非主鍵字段
第三範式(3NF)是在前兩個範式的基礎上的進一步增強,主要用來降低數據的冗餘。比如,員工錶中包含瞭部門編號,它引用到部門錶中的部門編號這個主鍵,符閤第三範式。如果在員工錶中又包含一個部門名稱,那麼錶中的字段就包含瞭其他錶中已齣現的非主鍵字段,造成瞭數據的冗餘,不符閤第三範式。
範式主要用來規範數據庫的設計,使得設計齣來的數據庫結構清晰,簡潔易懂,避免瞭數據冗餘和操作的異常。在設計數據庫模型時,靈活地應用範式是創建一個優秀的數據庫係統的基石。
1.1.3關係型數據庫管理係統
關係型數據庫管理係統,簡稱DBMS,是基於關係型數據庫理論而開發的軟件係統。目前比較熱門的關係型數據管理係統有:Oracle、MicrosoftSQLServer、Access、MySQL及PostgreSQL等。數據庫管理係統是用於建立、使用和維護數據庫,對數據庫進行統一的管理和控製,保證數據庫的安全性和完整性的一套大型的電腦程序。數據庫管理係統功能結構示意圖如圖1.5所示。
圖1.5數據庫管理係統功能結構示意圖
如圖1.5所示,一個數據庫管理係統通常要提供如下所示的幾項功能。
*定義數據庫結構:DBMS提供數據定義語言來定義(DDL)數據庫結構,用來搭建數據庫框架,並被保存在數據字典中。
*存取數據庫內容:DBMS提供數據操縱語言(DML),實現對數據庫數據的基本存取操作,即檢索、插入、修改和刪除等。
*數據庫的運行管理:DBMS提供數據控製功能,即數據的安全性、完整性和並發控製等,對數據庫運行進行有效的控製和管理,以確保數據正確有效。
*數據庫的建立和維護:包括數據庫初始數據的裝入,數據庫的轉儲、恢復、重組織,係統性能監視、分析等功能。
*數據庫的傳輸:DBMS提供處理數據的傳輸,實現用戶程序與DBMS之間的通信,通常與操作係統協調完成。
有瞭關係型數據庫管理係統,開發人員就可以在數據庫中創建數據庫、創建錶、存取數據庫內容、對數據庫進行備份和管理,隻需要理解常用的係統相關的操作,而不用去研究關係型數據庫係統內部深奧難懂的數據方麵的理論知識。
1.1.4使用SQL語句與數據庫管理係統通信
關係型數據庫管理係統提供瞭SQL語言,允許用戶操縱數據庫。SQL語言的全稱是結構化查詢語言(StructuredQueryLanguage),它是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶瞭解其具體的數據存放方式,其操作示意圖如圖1.6所示。
盡管SQL語言已經被ISO組織定義瞭具有國際標準的SQL規範,但是各種數據庫係統廠商在其數據庫管理係統中都對SQL規範做瞭某些編改和擴充。所以,實際上不同數據庫係統之間的SQL不能完全相互通用,目前比較流行的兩大類SQL語言分彆是微軟的T-SQL和Oracle的PL/SQL,這兩類SQL既有相似之處又有不同之處。
圖1.6使用SQL操作數據庫管理係統
SQL語言主要又分為如下兩大類。
*DML數據操縱語言,主要是完成數據的增、刪、改和查詢的操作。
*DDL數據定義語言,主要用來創建或修改錶、視圖、存儲過程及用戶等。
除此之外,還包含稱為DCL的數據控製語言。數據庫管理員,即DBA,通常使用DDL來管理數據庫的對象,而數據操縱語言DML則主要由數據庫開發人員使用來操縱數據。
舉個例子,如果想要在數據庫中創建如圖1.4所示的關係模型,可以使用代碼1.1的DDL語句來實現。
代碼1.1使用DDL語句創建列和鍵
--創建員工錶
CREATETABLE員工錶
(--定義員工錶列
工號INTNOTNULL,
中文姓名NVARCHAR2(20)NOTNULL,
英文姓名VARCHAR2(20)NULL,
彆名VARCHAR2(20)NULL,
年齡INTDEFAULT18,
入職日期DATENULL,
部門編號INTNULL,
--定義員工錶主鍵
CONSTRAINTPK_員工錶PRIMARYKEY(工號)
……
為什麼要寫這本書
隨著計算機信息技術的飛速發展,數據存儲已經成為很多公司越來越重視的問題。Oracle公司的數據庫管理軟件以其穩定、高效和靈活性,一直是各大企事業單位後颱存儲的首選。Oracle係統本身的復雜性,使得很多剛入門的開發人員不知從何入手,盡管Oracle公司提供瞭大量的文檔,但是這些文檔大多為英文版本,每個文檔都偏重於某一技術細節,沒有提供係統的、適閤我國程序員思維的學習材料。
目前在市麵上關於PL/SQL的圖書並不是很多,特彆是由國內程序員經驗總結的圖書更是寥寥無幾。本書作者站在一綫開發人員的視角,通過簡潔輕鬆的文字,簡短精練的示例代碼,以力求讓不同層次的開發人員盡快掌握Oracle數據庫開發為主旨編寫瞭本書,同時在本書最後還提供瞭兩個實戰項目,讓開發人員能夠通過項目學習PL/SQL開發,提高實際開發水平和項目實戰能力。
本書有何特色
1.附帶多媒體語音教學視頻,提高學習效率
為瞭便於讀者理解本書內容,提高學習效率,作者專門為每一章內容都錄製瞭大量的多媒體語音教學視頻。這些視頻和本書涉及的源代碼一起收錄於配書光盤中。
2.涵蓋PL/SQL語言的各種技術細節,提供係統化的學習思路
本書涵蓋瞭PL/SQL語言在實際項目中需要重點掌握的所有方麵,包含語言基礎、開發環境、常量和變量的定義、基本的控製結構、基本的SQL操作知識(比如查詢、插入、修改和刪除)、記錄和集閤、遊標、SQL的內置函數、事務處理、異常處理機製、子程序、包、觸發器、麵嚮對象的開發及動態SQL語句等知識點。
3.對PL/SQL開發的各種技術做瞭原理分析和實戰體驗
全書使用簡潔質樸的文字,配以大量的插圖,將一些難以理解的原理部分進行瞭重點剖析,讓讀者不僅知曉實現的原理,通過圖形化的展現方式,更能加強對原理的理解,同時配以大量的示例對技術要點在實際工作中的應用進行瞭詳解,讓讀者能盡快上手。
4.應用驅動,實用性強
對於每段示例代碼,都進行瞭仔細的錘煉,提供瞭各種實際應用的場景,力求讓應用開發人員將這些知識點盡快應用到實際的開發過程中。
5.項目案例典型,實戰性強,有較高的應用價值
本書最後一篇提供瞭兩個項目實戰案例。這些案例來源於作者所開發的實際項目,具有很高的應用價值和參考性。而且這些案例分彆使用不同的PL/SQL技術實現,便於讀者融會貫通地理解本書中所介紹的技術。這些案例稍加修改,便可用於實際項目開發中。
6.提供完善的技術支持和售後服務
讀者在閱讀本書過程中有任何疑問都可以通過該郵箱獲得幫助。
本書內容及知識體係
第1篇PL/SQL開發入門(第1~4章)
本篇介紹瞭Oracle的組成架構和PL/SQL開發的基礎知識。主要包括Oracle體係結構、PL/SQL開發環境、PL/SQL的總體概覽、常量和變量的定義,以及基本的PL/SQL控製結構。
第2篇PL/SQL開發基礎(第5~12章)
本篇是PL/SQL進行實際開發時必備的基礎知識,包含使用OracleSQL語句對數據錶的查詢、操縱;各種Oracle數據庫對象的管理,比如同義詞和序列等;同時對PL/SQL的記錄與集閤、各種SQL內置函數、遊標、事務處理、鎖定以及PL/SQL異常處理機製進行瞭詳細的介紹。
第3篇PL/SQL進階編程(第13~16章)
本篇討論瞭PL/SQL模塊化編程相關的子程序、包、觸發器的使用,這部分是實際工作中需要努力鞏固的知識點,同時介紹瞭本地動態SQL技術的使用。這一篇的知識點是每個PL/SQL程序員必備的技能,在介紹形式上通過輔以大量與實際場景相結閤的代碼,提升開發人員的實戰經驗。
第4篇PL/SQL高級編程(第17~18章)
本篇的內容針對已經熟練掌握瞭前麵幾篇的內容的開發人員,在具有瞭一定的PL/SQL開發經驗後,可以通過本篇的內容學習使用麵嚮對象的思維來開發PL/SQL應用程序,同時對於PL/SQL開發過程中的一些性能優化的注意事項進行瞭示例詳解(提升開發人員的實戰經驗)。
第5篇PL/SQL案例實戰(第19~20章)
本篇通過兩個實際的項目案例,從需求分析、數據庫錶的設計、係統的總體規劃開始,到包規範的定義、包體的具體實現,詳細剖析一個PL/SQL的實現生命周期,通過對這兩個案例的一步一步深入體驗,能讓開發人員立即上手開始進行PL/SQL項目的開發。同時對這兩個案例稍加修改,就能應用到實際的項目開發中。
配書光盤內容介紹
為瞭方便讀者閱讀本書,本書附帶1張DVD光盤,內容如下。
*本書所有實例的源代碼;
*本書每章內容的多媒體語音教學視頻;
*免費贈送的Oracle入門教學視頻。
適閤閱讀本書的讀者
*需要全麵學習OraclePL/SQL開發技術的人員;
*數據庫開發程序員;
*應用程序開發人員;
*Oracle數據庫管理人員;
*希望提高項目開發水平的人員;
*專業培訓機構的學員;
*軟件開發項目經理;
*需要一本PL/SQL案頭必備查詢手冊的人員。
閱讀本書的建議
*沒有OraclePL/SQL基礎的讀者,建議從第1章順次閱讀並演練每一個示例。
*有一定OraclePL/SQL基礎的讀者,可以根據實際情況有重點地選擇閱讀各個技術要點。
*對於每一個知識點和項目案例,先通讀一遍有個大概印象,然後對於每個知識點的示例代碼都在開發環境中操作一遍,加深對知識點的印象。
*結閤光盤中提供的多媒體教學視頻再理解一遍,這樣理解起來就更加容易,也會更加深刻。
筆者寫作本書雖然耗費瞭大量精力,力爭消滅錯誤,但恐百密難免一疏。
編著者
京東的書一如既往的好,剛好有活動,就買瞭,確實不錯,值得一讀!
評分現在價格還算比較閤適,是一本好書
評分不錯,産品包裝好,派送速度快,服務態度好
評分還沒看,活動價格先拿下
評分看瞭目錄 大緻內容差不多
評分印刷質量很好,但是內容一般。
評分物流很快,很不錯,好,好,好!
評分好好好好好還好還好好好好好好還好還好好好好好好還好還好好好好好好還好還好
評分發貨速度快,火速看起來。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 windowsfront.com All Rights Reserved. 靜流書站 版權所有