出版時間:2010-1 出版社:電子工業(yè)出版社 作者:James Groff,Paul Weinberg,Andrew J. Oppel 頁數(shù):591
Tag標(biāo)簽:無
前言
本書為專業(yè)和非專業(yè)用戶、程序員、數(shù)據(jù)處理方面的專業(yè)人士以及想要了解SQL在當(dāng)今計算機(jī)產(chǎn)業(yè)中的影響的管理人員,提供了關(guān)于SQL語言的深入介紹。本書為理解和使用SQL提供了一個概念上的框架,描述了SQL的歷史和SQL的標(biāo)準(zhǔn),解釋了SQL在各種計算機(jī)產(chǎn)業(yè)領(lǐng)域(如企業(yè)級數(shù)據(jù)處理、數(shù)據(jù)倉庫、Web站點(diǎn)架構(gòu))中的作用。這一版包含一些新的章節(jié),專門講述SQL在應(yīng)用服務(wù)器架構(gòu)中的作用、SQL與XML的集成以及其他基于對象的技術(shù)。 本書將逐步講解如何使用SQL。為使讀者掌握SQL的概念,書中給出了許多圖形和實(shí)際例子。本書也對來自主要DBMS供應(yīng)商的SQL產(chǎn)品進(jìn)行了比較,描述了它們的優(yōu)點(diǎn)和缺點(diǎn),目的是幫助讀者選擇正確的產(chǎn)品。附錄A中提供了書中描述的示例數(shù)據(jù)庫的多數(shù)例子。示例數(shù)據(jù)庫包含支持簡單訂貨處理應(yīng)用的數(shù)據(jù)。附錄A中還包含有用于下載SQL語句的指令,這些語句用于創(chuàng)建和管理讀者的DBMS(如Oracle、SQL Server、MySQL和DB2)中的示例數(shù)據(jù)庫表,從而使得讀者可試用本書中的示例并獲得關(guān)于編寫和運(yùn)行SQL語句的實(shí)際經(jīng)驗(yàn)。 在某些章節(jié)中,討論的主題是在兩個不同的層次上進(jìn)行的,首先討論問題的基本描述,然后討論一些高級特性,便于需要理解SQL內(nèi)部機(jī)制的計算機(jī)專業(yè)人士使用。更高級的信息在標(biāo)有星號的章節(jié)中描述。如果只希望理解SQL是什么及其工作原理,則不需要閱讀這些章節(jié)。 本書的組織結(jié)構(gòu) 本書分為六大部分,分別討論了SQL的不同方面?! 〉谝徊糠謱QL進(jìn)行了介紹,并從市場的角度講述了其作為數(shù)據(jù)庫語言的作用。該部分共包含四章,分別描述了SQL的歷史、SQL標(biāo)準(zhǔn)的演化、SQL是怎樣與關(guān)系數(shù)據(jù)模型和較早的數(shù)據(jù)庫技術(shù)相關(guān)聯(lián)的。這一部分還簡要回顧了SQL、演示了其重要特性并概述了這種語言?! 〉诙糠置枋隽薙QL中允許執(zhí)行數(shù)據(jù)庫查詢的特性。第5章描述了SQL語言的基本結(jié)構(gòu)。接下來的四章從最簡單的SQL查詢開始,逐步深入到構(gòu)建更復(fù)雜的查詢,包括多表查詢、匯總查詢和使用子查詢的查詢?! 〉谌糠终故玖巳绾问褂肧QL將新數(shù)據(jù)添加到數(shù)據(jù)庫中、從數(shù)據(jù)庫中刪除數(shù)據(jù)以及修改現(xiàn)有的數(shù)據(jù)庫數(shù)據(jù)。它也描述了在更新數(shù)據(jù)時產(chǎn)生的數(shù)據(jù)庫完整性問題以及SQL如何解決這些問題。這一部分的后三章討論了SQL的事務(wù)處理概念和SQL對多用戶事務(wù)處理的支持?! 〉谒牟糠稚婕皠?chuàng)建和管理一個基于SQL的數(shù)據(jù)庫,其中的四章講述了如何創(chuàng)建形成關(guān)系數(shù)據(jù)庫結(jié)構(gòu)的表、視圖和索引。它還描述了防止未授權(quán)訪問數(shù)據(jù)的SQL的安全模式,以及描述數(shù)據(jù)庫結(jié)構(gòu)的SQL系統(tǒng)目錄。同時討論了在各種基于SQL的DBMS產(chǎn)品所支持的數(shù)據(jù)庫結(jié)構(gòu)之間的顯著區(qū)別。 第五部分描述了應(yīng)用程序如何使用SQL進(jìn)行數(shù)據(jù)庫訪問。討論了由ANSI標(biāo)準(zhǔn)規(guī)定且被IBM、Oracle、Ingres、Informix和其他許多基于SQL的DBMS產(chǎn)品使用的嵌入式SQL。這一部分還描述了用于構(gòu)建一般用途的數(shù)據(jù)庫表(如報表書寫器和數(shù)據(jù)庫瀏覽程序)的動態(tài)SQL接口。最后,這一部分描述了流行的SQL API,包括ODBC、ISO標(biāo)準(zhǔn)調(diào)用級接口和JDBC、用于Java的標(biāo)準(zhǔn)調(diào)用級接口,以及專用的調(diào)用級接口,如Oracle的OCI API?! 〉诹糠址治隽薙QL在今天的熱門應(yīng)用領(lǐng)域的使用情況,以及基于SQL的DBMS產(chǎn)品的現(xiàn)狀。其中的兩章描述了SQL存儲過程和用于在線事務(wù)處理的觸發(fā)器的使用情況,并與用于數(shù)據(jù)倉庫的SQL的使用進(jìn)行了對比。另外的四章描述了基于SQL的分布式數(shù)據(jù)庫、對象技術(shù)對SQL的影響、SQL與XML的集成。最后一章探討了SQL的未來和SQL數(shù)據(jù)管理方面的一些重要發(fā)展趨勢。 本書約定 本書描述了在大多數(shù)流行的基于SQL的DBMS產(chǎn)品中可用的SQL特性和函數(shù),也討論了在ANSI/ISO SQL標(biāo)準(zhǔn)中描述的這些產(chǎn)品所具有的SQL特性和函數(shù)。本書中所述的SQL語句語法和在范例中使用的SQL語句語法,均適用于所有的SQL方言(即某種數(shù)據(jù)庫產(chǎn)品中的專用語言)。如果使用不同的方言,在敘述中就會指出區(qū)別,但書中的例子是通用于各種數(shù)據(jù)庫產(chǎn)品的。在這些例子中,讀者必須修改示例中的SQL語句以適應(yīng)特定的DBMS。 本書的讀者對象 本書適用于希望理解和學(xué)習(xí)SQL的任何人,包括數(shù)據(jù)庫用戶、從事數(shù)據(jù)處理工作的專業(yè)人士、架構(gòu)設(shè)計師、程序員、學(xué)生和管理人員。本書用簡單易懂的語言配上圖形和例子,描述了SQL是什么、為什么它如此重要、應(yīng)該如何使用它等問題。本書并不特別針對于某一特定的SQL品牌或方言,而是描述SQL語言的標(biāo)準(zhǔn)和核心內(nèi)容,以及大多數(shù)流行的SQL產(chǎn)品(包括Oracle、Microsoft SQL Server、IBM DB2、Informix、Sybase和MySQL)之間的區(qū)別。它還解釋了基于SQL的標(biāo)準(zhǔn),如ODBC和JDBC的重要性,用于SQL和與SQL有關(guān)技術(shù)的ANSI/ISO標(biāo)準(zhǔn)的重要性。這一版包含了一些新的章節(jié),討論了在對象關(guān)系技術(shù)、XML和應(yīng)用服務(wù)器架構(gòu)領(lǐng)域SQL的最新進(jìn)展情況。 如果讀者剛開始學(xué)習(xí)SQL,本書提供了這種語言的全面細(xì)致的講解,涉及從簡單查詢到更高級概念的所有方面。本書的結(jié)構(gòu)使讀者能夠很快掌握SQL的基本知識,但如果讀者想要使用這種語言的更復(fù)雜的特性,本書也同樣適合。讀者可以使用McGraw-Hill公司的網(wǎng)站(見附錄A)上的SQL軟件來試試本書中的例子,從而掌握SQL。 如果讀者是從事數(shù)據(jù)庫處理工作的專業(yè)人員、架構(gòu)設(shè)計師或管理人員,本書談到了一種觀點(diǎn),即SQL對信息技術(shù)產(chǎn)業(yè)的影響—從個人計算機(jī)到大型機(jī)、數(shù)據(jù)倉庫、Internet網(wǎng)站和基于Internet的分布式應(yīng)用,讀者可能會感興趣。前面的章節(jié)描述了SQL的歷史、它在市場中的作用、它從最早的數(shù)據(jù)庫技術(shù)開始發(fā)展的情況。后面的章節(jié)描述了SQL的未來和新的數(shù)據(jù)庫技術(shù)(如分布式數(shù)據(jù)庫、SQL的面向?qū)ο髷U(kuò)展、商用智能數(shù)據(jù)庫、數(shù)據(jù)庫/XML集成的發(fā)展)等。 如果讀者是一名程序員,本書提供了使用SQL進(jìn)行編程的詳細(xì)信息。與許多DBMS產(chǎn)品的參考手冊不同的是,本書提供了SQL編程的概念性框架,解釋了為什么及如何開發(fā)基于SQL的應(yīng)用程序。它對由所有主流SQL產(chǎn)品(包括嵌入式SQL、動態(tài)SQL、ODBC、JDBC)提供的SQL編程接口和專用API(如Oracle調(diào)用接口)進(jìn)行了比較。對編程技術(shù)的描述和比較提供了其他圖書中沒有的觀點(diǎn)。 如果讀者正在選擇一種DBMS產(chǎn)品,本書提供了對各種DBMS供應(yīng)商提供的SQL特性、優(yōu)點(diǎn)的比較,可供參考。對主流DBMS產(chǎn)品之間的區(qū)別,不僅從技術(shù)角度,而且從它們對應(yīng)用程序的影響、它們在市場上的競爭地位等方面進(jìn)行了解釋。讀者可在自己的應(yīng)用中使用“示例數(shù)據(jù)庫”檢驗(yàn)一下這些特性。 總之,不論讀者是專業(yè)用戶還是非專業(yè)用戶,都可以從本書中受益。本書提供了關(guān)于SQL語言、SQL的特性和優(yōu)點(diǎn)、基于SQL的流行產(chǎn)品、SQL的歷史、SQL對信息技術(shù)產(chǎn)業(yè)未來方向的影響的全面信息。
內(nèi)容概要
對SQL技術(shù)的使用和發(fā)展進(jìn)行了全面的討論。全書分為六大部分。第一部分介紹什么是SQL,并從市場角度講述其作為數(shù)據(jù)庫語言的作用。第二部分描述SQL中的數(shù)據(jù)庫查詢功能。第三部分探討如何添加、刪除和更新現(xiàn)有數(shù)據(jù)庫的數(shù)據(jù)。第四部分介紹創(chuàng)建和管理基于SQL的數(shù)據(jù)庫的方法。第五部分介紹應(yīng)用程序使用SQL進(jìn)行數(shù)據(jù)庫訪問的方法。第六部分分析SQL的使用情況以及基于SQL的DBMS產(chǎn)品的現(xiàn)狀。與前一版相比,這一版本中包含了一些新的章節(jié),專門講述SQL在應(yīng)用服務(wù)器架構(gòu)中的作用、SQL與XML的集成,以及其他對象技術(shù)(包括商務(wù)智能數(shù)據(jù)庫、內(nèi)存數(shù)據(jù)庫、流數(shù)據(jù)庫和嵌入式數(shù)據(jù)庫)。 全書不僅介紹了SQL的基本知識、SQL的發(fā)展歷程,而且提供了各主要數(shù)據(jù)庫開發(fā)商在數(shù)據(jù)庫領(lǐng)域的成長信息。因此,《SQL完全手冊(第3版)》適用于希望理解和學(xué)習(xí)SQL的任何人,包括數(shù)據(jù)庫用戶、從事數(shù)據(jù)處理工作的專業(yè)人士、架構(gòu)設(shè)計師、程序員、學(xué)生和管理人員。
書籍目錄
第一部分 SQL概述第1章 簡介1.1 SQL語言1.2 SQL的定位1.3 SQL取得成功的因素第2章 SQL快速入門2.1 一個簡單的數(shù)據(jù)庫2.2 檢索數(shù)據(jù)2.3 匯總數(shù)據(jù)2.4 向數(shù)據(jù)庫中添加數(shù)據(jù)2.5 刪除數(shù)據(jù)2.6 更新數(shù)據(jù)庫2.7 保護(hù)數(shù)據(jù)2.8 創(chuàng)建數(shù)據(jù)庫2.9 小結(jié)第3章 SQL剖析3.1 SQL與數(shù)據(jù)庫管理的演化3.2 SQL簡史3.3 SQL標(biāo)準(zhǔn)3.4 SQL和網(wǎng)絡(luò)3.5 SQL的衍生3.6 小結(jié)第4章 關(guān)系數(shù)據(jù)庫4.1 早期的數(shù)據(jù)模型4.2 關(guān)系數(shù)據(jù)模型4.3 Codd關(guān)于關(guān)系數(shù)據(jù)庫的12條原則4.4 小結(jié)第二部分 檢索數(shù)據(jù)第5章 SQL基礎(chǔ)知識5.1 語句5.2 名稱5.3 數(shù)據(jù)類型5.4 常量5.5 表達(dá)式5.6 內(nèi)嵌函數(shù)5.7 NULL值5.8 小結(jié)第6章 簡單查詢6.1 SELECT語句6.2 查詢結(jié)果6.3 簡單查詢6.4 選擇所有字段(SELECT)6.5 重復(fù)的記錄(DISTINCT)6.6 選擇記錄(WHERE)6.7 搜索條件6.8 排序查詢結(jié)果(ORDERBY)6.9 單表查詢處理的原則6.10 小結(jié)第7章 多表查詢(連接)7.1 一個兩表查詢的范例7.2 簡單連接(等連接)7.3 不等連接7.4 SQL對多表查詢考慮的因素7.5 多表查詢的性能7.6 連接的結(jié)構(gòu)7.7 外連接7.8 連接和SQL標(biāo)準(zhǔn)7.9 小結(jié)第8章 匯總查詢8.1 字段函數(shù)8.2 分組查詢(GROUPBY)8.3 分組搜索條件(HAVING)8.4 小結(jié)第9章 子查詢和查詢表達(dá)式9.1 使用子查詢9.2 子查詢搜索條件9.3 子查詢和連接9.4 嵌套的子查詢9.5 關(guān)聯(lián)子查詢9.6 HAVING子句中的子查詢9.7 子查詢小結(jié)9.8 SQL2中的高級查詢9.9 小結(jié)第三部分 更新數(shù)據(jù)第10章 數(shù)據(jù)庫更新10.1 向數(shù)據(jù)庫中添加數(shù)據(jù)10.2 從數(shù)據(jù)庫中刪除數(shù)據(jù)10.3 修改數(shù)據(jù)庫中的數(shù)據(jù)10.4 小結(jié)第11章 數(shù)據(jù)完整性11.1 什么是數(shù)據(jù)完整性11.2 要求的數(shù)據(jù)11.3 簡單有效性檢查11.4 實(shí)體完整性11.5 引用完整性11.6 高級約束功能11.7 商業(yè)規(guī)則11.8 小結(jié)第12章 事務(wù)處理12.1 什么是事務(wù)12.2 ANSI/ISOSQL事務(wù)模型12.3 事務(wù)原理$12.4 事務(wù)和多用戶處理12.5 鎖定12.6 版本化12.7 小結(jié)第四部分 數(shù)據(jù)庫結(jié)構(gòu)第13章 創(chuàng)建數(shù)據(jù)庫13.1 數(shù)據(jù)定義語言13.2 創(chuàng)建數(shù)據(jù)庫13.3 表定義13.4 約束定義13.5 別名和匿名(CREATE/DROPALIAS)13.6 索引(CREATE/DROPINDEX)13.7 管理其他數(shù)據(jù)庫對象13.8 數(shù)據(jù)庫結(jié)構(gòu)13.9 數(shù)據(jù)庫結(jié)構(gòu)與ANSI/ISO標(biāo)準(zhǔn)13.10 小結(jié)第14章 視圖14.1 什么是視圖14.2 創(chuàng)建視圖(CREATEVIEW)14_3更新視圖14.4 刪除視圖(DROPVIEW)14.5 物化視圖14.6 小結(jié)第15章 SQL安全15.1 SQL安全的概念15.2 視圖和SQL安全15.3 授予權(quán)限(GRANT)15.4 取消權(quán)限(REVOKE)15.5 基于角色的安全15.6 小結(jié)第16章 系統(tǒng)目錄16.1 什么是系統(tǒng)目錄16.2 表信息16.3 字段信息16.4 視圖信息16.5 注釋16.6 關(guān)系信息16.7 用戶信息16.8 權(quán)限信息16.9 SQL信息模式16.1 0其他目錄信息16.1 1小結(jié)第五部分 使用SQL編程第17章 嵌入式SQL17.1 程序化SQL技術(shù)17.2 簡單的嵌入式SQL語句17.3 嵌入式SQL中的數(shù)據(jù)檢索17.4 基于游標(biāo)的刪除和更新17.5 游標(biāo)和事務(wù)處理17.6 小結(jié)第18章 動態(tài)SQL18.1 靜態(tài)SQL的局限性18.2 動態(tài)SQL概念18.3 動態(tài)語句執(zhí)行(EXECUTEIMMEDIATE)18.4 兩步動態(tài)執(zhí)行18.5 動態(tài)查詢18.6 動態(tài)SQL方言18.7 動態(tài)sQL和SQL標(biāo)準(zhǔn)18.8 小結(jié)第19章 SQL APL第六部分 SQL的今天和明天第20章 數(shù)據(jù)庫處理和存儲過程SQL第21章 SQL和數(shù)據(jù)倉庫第22章 SQL和應(yīng)用服務(wù)器第23章 SQL網(wǎng)絡(luò)和分布式數(shù)據(jù)庫第24章 SQL與對象第25章 SQL和XML第26章 專用數(shù)據(jù)庫第27章 SQL的未來第七部分 附錄
章節(jié)摘錄
20世紀(jì)80年代期間,小型機(jī)供應(yīng)商也開發(fā)了他們自己的以SQt.為特性的專用關(guān)系數(shù)據(jù)庫公司認(rèn)為關(guān)系數(shù)據(jù)庫是如此之重要,以至于它將Rdb/VMS數(shù)據(jù)庫的運(yùn)行時版本和每個VAX/VMS系統(tǒng)捆綁銷售。HP公司提供了Allbase,這是一個支持它的HPSQL方言和非關(guān)系接口的數(shù)據(jù)庫Data,C,eacntl公司的DO/SQL數(shù)據(jù)庫取代了老的非關(guān)系數(shù)據(jù)庫作為它的策略數(shù)據(jù)管理工具。此外,許多小型機(jī)供應(yīng)商也銷售從獨(dú)立數(shù)據(jù)庫軟件供應(yīng)商處購得的關(guān)系數(shù)據(jù)庫。這些都有助于將SQL向中等規(guī)模計算機(jī)系統(tǒng)遷移?! 〉?0世紀(jì)90年代中期,小型機(jī)供應(yīng)商的SQL產(chǎn)品絕大部分都已不復(fù)存在,被來自O(shè)racle、Informix、Sybase和其他公司的多平臺軟件擠出了市場。隨之而來的是,小型機(jī)操作系統(tǒng)的重要性也開始衰退,由在中等規(guī)模系統(tǒng)中廣泛使用的UNIX所取代。以前的小型機(jī)SQL.市場變成了今天的基于SQL的UNIX數(shù)據(jù)庫服務(wù)器市場?! ?.5.3基于UNIX系統(tǒng)的SQL SQL已建立了它作為基于UNIX的計算機(jī)系統(tǒng)的數(shù)據(jù)管理解決方案的地位。最早由貝爾實(shí)驗(yàn)室開發(fā)的UNIX,在20世紀(jì)80年代作為不依賴供應(yīng)商的標(biāo)準(zhǔn)操作系統(tǒng)變得非常流行。它運(yùn)行在從工作站到大型機(jī)這樣大范圍的計算機(jī)系統(tǒng)上,已變成了高端服務(wù)器系統(tǒng),包括數(shù)據(jù)庫服務(wù)器的標(biāo)準(zhǔn)操作系統(tǒng)。
編輯推薦
詳細(xì)講解SQL的性能、ANSI標(biāo)準(zhǔn)、用途和編程 主要SQL數(shù)據(jù)庫產(chǎn)品的歷史、市場趨勢和特性比較 更新了關(guān)于XML的信息,涵蓋商務(wù)智能數(shù)據(jù)庫、 內(nèi)存數(shù)據(jù)庫、流數(shù)據(jù)庫和嵌入式數(shù)據(jù)庫 SQL是當(dāng)今信息處理領(lǐng)域最熱門的技術(shù)之一,隨著SQL規(guī)范的不斷完善和普及,SQL已成為各數(shù)據(jù)庫廠商必須遵循的標(biāo)準(zhǔn)。熟悉和了解SQL的原理和方法,是所有與數(shù)據(jù)處理有關(guān)的人員必須掌握的技能?! 禨QL完全手冊(第3版)》是在前一版的基礎(chǔ)上修訂而成的。內(nèi)容涉及SQL命令和語句的使用方法、關(guān)系數(shù)據(jù)庫的建立、數(shù)據(jù)庫對象的載人和修改、強(qiáng)大查詢的執(zhí)行、性能調(diào)優(yōu)以及安全政策的實(shí)現(xiàn)等。讀者還會學(xué)到如何采用DDL.語句和API、集成XML和Java腳本、使用SQL對象、建立Web服務(wù)器、處理遠(yuǎn)程訪問及執(zhí)行分布式事務(wù)等知識。此外,《SQL完全手冊(第3版)》還介紹了用于管理運(yùn)行在掌上設(shè)備和無線設(shè)備上的內(nèi)存數(shù)據(jù)庫、流數(shù)據(jù)庫和嵌入式數(shù)據(jù)庫技術(shù)?! ?nèi)容要點(diǎn) 建立基于SQL的關(guān)系數(shù)據(jù)庫和應(yīng)用 使用SQL創(chuàng)建、載人和修改數(shù)據(jù)庫 構(gòu)建和執(zhí)行簡單的多表查詢與匯總查詢 使用認(rèn)證、權(quán)限、角色和視圖實(shí)現(xiàn)安全度量 數(shù)據(jù)庫優(yōu)化、備份、恢復(fù)和復(fù)制處理 使用存儲過程、函數(shù)、擴(kuò)展、觸發(fā)器和對象 使用API、動態(tài)SQL.和嵌入式SQL.?dāng)U展功能 探討如DBMS事務(wù)、鎖定機(jī)制、物化視圖和兩階段提交協(xié)議等高級主題 理解SQL的最新市場趨勢和未來
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載