數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā)

出版時間:2010-1  出版社:清華大學(xué)出版社  作者:周漢平  頁數(shù):367  

前言

  20世紀(jì)90年代初,我獨(dú)立承接了一個期貨交易所會員單位的保證金和交易管理系統(tǒng)的開發(fā)項目,那時不懂什么是數(shù)據(jù)庫,更不懂?dāng)?shù)據(jù)庫理論,但就憑著對計算機(jī)技術(shù)的濃厚興趣,硬是夜以繼日地把該項目做了下來,并得到了用戶單位的好評。此后就一發(fā)不可收拾,十幾年中獨(dú)立開發(fā)或參與開發(fā)了很多大大小小的數(shù)據(jù)庫應(yīng)用系統(tǒng),但對數(shù)據(jù)庫理論的學(xué)習(xí)和研究卻是幾年以后的事了,其一是因為項目的開發(fā)越來越規(guī)范,尤其團(tuán)隊開發(fā)的情況下,各人的數(shù)據(jù)庫設(shè)計方法各不相同,僅憑經(jīng)驗很難說服別人遵從自己的設(shè)計,那時也確實沒有辦法系統(tǒng)地論證某一種設(shè)計的優(yōu)越性,所以迫切需要用理論知識來武裝自己;其二是因為教學(xué)上的需要,我必須為計算機(jī)本科專業(yè)的學(xué)生開設(shè)“數(shù)據(jù)庫系統(tǒng)概論”課程?! ≡趯W(xué)習(xí)數(shù)據(jù)庫理論的過程中,發(fā)現(xiàn)最大的問題是理論和實踐的脫節(jié),過去軟件設(shè)計過程中的疑難問題一一閃現(xiàn),但很難在書上找到答案或從書上的實例中受到啟發(fā),原因是大多數(shù)數(shù)據(jù)庫理論書籍告訴我們的是“理論是什么”,而很少告訴我們“為什么”或“怎么用”的問題,書中的實例也側(cè)重于說明怎么做才符合理論,而沒有告訴我們怎么用理論去指導(dǎo)設(shè)計和解決實際開發(fā)中的問題?! ∑浯危壳瓣P(guān)系型數(shù)據(jù)庫理論已成體系,但其中只有一小部分內(nèi)容對軟件開發(fā)有實際意義,而大多數(shù)內(nèi)容是從事數(shù)據(jù)庫理論研究的人員所必須具備的知識,這是大學(xué)生在工作后,從事數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計開發(fā)過程中,普遍感到在校學(xué)習(xí)的數(shù)據(jù)庫理論沒有用的主要而真實的原因所在?! 〈撕髮W(xué)校又安排我開設(shè)“數(shù)據(jù)庫應(yīng)用程序設(shè)計”課程,我以為終于找到了把數(shù)據(jù)庫理論和我所掌握的實踐技能結(jié)合起來傳授給學(xué)生的機(jī)會了,于是我開始找教材,目標(biāo)很明確:教材要包含設(shè)計和開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)的所有實用的知識和技能,包括能直接指導(dǎo)數(shù)據(jù)庫設(shè)計的理論、方法和工具、側(cè)重實踐的數(shù)據(jù)庫服務(wù)器端的程序開發(fā)與基于目前主流語言和平臺的客戶端應(yīng)用程序開發(fā)技術(shù),遺憾的是,我竟然沒有找到一本這樣的書籍?! 〖幢惆褍杀旧踔寥緯掀饋碜鳛榻滩?,在理論和實踐的結(jié)合方面仍然不能令人滿意,一些書只講理論,而另一些書只講實踐,造成這種現(xiàn)象的原因很簡單,從事軟件開發(fā)的人,很少有時間、精力或興趣去從事理論研究和出版書籍,而有條件搞理論研究的人又很缺乏從業(yè)經(jīng)驗,一些人為了獲取經(jīng)驗投身到軟件開發(fā)的第一線,但很少有人再回過來利用這些經(jīng)驗去搞理論研究,這就是我們國家軟件行業(yè)理論與實踐關(guān)系之現(xiàn)狀。

內(nèi)容概要

  《高等學(xué)校教材·計算機(jī)科學(xué)與技術(shù):數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā)》》從關(guān)系型數(shù)據(jù)庫模型設(shè)計、數(shù)據(jù)庫服務(wù)器端SQL程序設(shè)計和數(shù)據(jù)庫客戶端程序設(shè)計三個方面介紹數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā)的實用技術(shù)。第一部分介紹范式理論的運(yùn)用和如何使用PowerDesigner依據(jù)需求建立正確合理的概念模型:第二部分介紹如何進(jìn)行SQL程序設(shè)計以解決典型的應(yīng)用問題;第三部分介紹使用Delphi、C#for .Net以及采用J2EE架構(gòu),進(jìn)行C/S和B/S多層結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用程序開發(fā)的基本方法?!  陡叩葘W(xué)校教材·計算機(jī)科學(xué)與技術(shù):數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā)》》可作為大學(xué)計算機(jī)本科專業(yè)的教材和計算機(jī)軟件開發(fā)人員進(jìn)行數(shù)據(jù)庫設(shè)計和SQL程序設(shè)計的實用指導(dǎo)書,也可作為使用Delphi、C#for .Net和J2EE平臺和架構(gòu)開發(fā)數(shù)據(jù)庫客戶端和中間層應(yīng)用程序的程序員入門參考書。

書籍目錄

第1篇 關(guān)系數(shù)據(jù)庫設(shè)計技術(shù) 第1章 關(guān)系模型和關(guān)系型數(shù)據(jù)庫管理系統(tǒng) 1.1 問題的引出 1.2 關(guān)系模型 1.3 關(guān)系型數(shù)據(jù)庫管理系統(tǒng)RDBMS 第2章 范式及其對數(shù)據(jù)庫設(shè)計的指導(dǎo)意義 2.1 問題的引出 2.2 范式理論概述 2.3 1NF及對實踐的指導(dǎo)意義 2.4 函數(shù)依賴 2.5 2NF及對實踐的指導(dǎo)意義 2.6 3NF及對實踐的指導(dǎo)意義 2.7 BCNF——擴(kuò)充的第三范式 2.8 范式應(yīng)用實例分析 2.9 范式的局限——對冗余的進(jìn)一步討論 第3章 數(shù)據(jù)庫靜態(tài)結(jié)構(gòu)設(shè)計和實現(xiàn) 3.1 概念模型一般概念 3.2 PowerDesigner概述 3.3 實體——域、數(shù)據(jù)項和屬性 3.4 實體之間的關(guān)系 3.5 繼承 3.6 概念數(shù)據(jù)模型實例分析 3.7 物理數(shù)據(jù)模型PDM 3.8 數(shù)據(jù)庫的建立 第2篇 SQL程序設(shè)計 第4章 查詢語句和視圖 4.1 單表查詢 4.2 數(shù)據(jù)源中數(shù)據(jù)表的各種連接 4.3 子查詢及其邏輯運(yùn)算符 4.4 關(guān)系集合運(yùn)算的實現(xiàn) 4.5 視圖 4.6 典型查詢實例分析 4.7 查詢語句小結(jié) 第5章 修改語句及其子查詢的運(yùn)用 5.1 插入行 5.2 更新行 5.3 刪除行 第6章 數(shù)據(jù)庫中數(shù)據(jù)的安全控制 6.1 問題的引出 6.2 用戶和角色 6.3 授權(quán)和回收 6.4 視圖機(jī)制控制用戶的權(quán)限 第7章 數(shù)據(jù)庫行為特征設(shè)計——SQL程序設(shè)計 7.1 SQL程序基礎(chǔ) 7.2 函數(shù)和表達(dá)式 7.3 存儲過程 7.4 觸發(fā)器 7.5 臨時表和表變量 7.6 游標(biāo) 7.7 事務(wù) 第3篇 數(shù)據(jù)庫應(yīng)用程序界面和中間層設(shè)計 第8章 數(shù)據(jù)庫應(yīng)用程序開發(fā)技術(shù)概述 8.1 數(shù)據(jù)庫應(yīng)用系統(tǒng)的體系結(jié)構(gòu) 8.2 可視化程序設(shè)計概述 8.3 可視化程序設(shè)計實例 8.4 數(shù)據(jù)存取技術(shù) 第9章 C/S結(jié)構(gòu)在線式數(shù)據(jù)庫應(yīng)用程序設(shè)計 9.1 數(shù)據(jù)庫應(yīng)用程序界面設(shè)計需求 9.2 Delphi簡介 9.3 界面設(shè)計 9.4 建立數(shù)據(jù)模塊(Data Module) 9.5 控件數(shù)據(jù)和數(shù)據(jù)表數(shù)據(jù)的同步 9.6 實現(xiàn)按鈕功能的程序 9.7 計算列的計算程序 9.8 報表的設(shè)計和輸出 9.9 數(shù)據(jù)表的打開和窗口的創(chuàng)建 9.10 小結(jié) 第10章 C/S結(jié)構(gòu)斷開式數(shù)據(jù)庫應(yīng)用程序設(shè)計 10.1 ADO.NET 10.2 數(shù)據(jù)庫應(yīng)用程序界面設(shè)計需求 10.3 創(chuàng)建項目和界面控件設(shè)置 10.4 程序方式實現(xiàn)界面控件與數(shù)據(jù)庫數(shù)據(jù)的交互 10.5 數(shù)據(jù)集及綁定的可視化設(shè)計和實現(xiàn) 10.6 報表設(shè)計 第11章 B/S多層架構(gòu)入門 11.1 基礎(chǔ)準(zhǔn)備 11.2 開始第一個程序 11.3 J2EE和EJB簡述 11.4 實用的用戶驗證需求 11.5 無狀態(tài)SessionBean——用戶驗證和密碼修改 11.6 有狀態(tài)SessionBean——保留用戶信息 11.7 EntityBean——修改密碼 11.8 常見錯誤及處理 附錄A DEMO數(shù)據(jù)庫中數(shù)據(jù)表結(jié)構(gòu)及數(shù)據(jù) 附錄B 完整的Delphi程序 附錄C 完整的C#窗口Frm_Std_Grade程序 附錄D CrystalReport設(shè)計界面 附錄E MyEelipse中實例項目清單 參考文獻(xiàn)

章節(jié)摘錄

  在生成的如圖3-36所示的物理數(shù)據(jù)模型中,所有單據(jù)表中都有單據(jù)類型編號,該編號對一種類型的單據(jù)來說值不變,是一種冗余的數(shù)據(jù),但該冗余的數(shù)據(jù)是為了和各單據(jù)公共數(shù)據(jù)構(gòu)成的“單據(jù)”表建立引用關(guān)系,所以是必要的冗余?! ×硪环N方法是在概念數(shù)據(jù)模型中去除“單據(jù)”實體,讓“定單”或“進(jìn)貨單”等單據(jù)實體直接和“人員”實體建立多對多聯(lián)系,在生成的物理數(shù)據(jù)模型中,n種單據(jù)將產(chǎn)生n個表達(dá)“單據(jù)”實體和“人員”實體的多對多關(guān)系的表。讀者可自行按此方法建立概念數(shù)據(jù)模型。3.7物理數(shù)據(jù)模型PDM  建立了概念數(shù)據(jù)模型CDM后,可以生成物理數(shù)據(jù)模型PDM,即關(guān)系模型,正如上節(jié)看到的,物理數(shù)據(jù)模型同樣以圖形方式表達(dá)關(guān)系模型中各二維表的結(jié)構(gòu)及其相互之間的引用關(guān)系?! ∥锢頂?shù)據(jù)模型并非一定要通過概念數(shù)據(jù)模型轉(zhuǎn)換而來,也可以直接建立一個物理數(shù)據(jù)模型,或?qū)ι傻奈锢頂?shù)據(jù)模型進(jìn)行修改,建立和修改方法和概念數(shù)據(jù)模型類似。本節(jié)重點描述由概念數(shù)據(jù)模型如何生成物理數(shù)據(jù)模型以及兩者之間的關(guān)系維護(hù)的基本思想和方法。  1.生成物理數(shù)據(jù)模型 在完成概念數(shù)據(jù)模型的設(shè)計后,使用菜單“工具(Fools)”I“生成物理數(shù)據(jù)模型(GeneratePhysical Data Model)”打開生成對話框以生成物理數(shù)據(jù)模型。通過設(shè)置對話框中的“PDM生成參數(shù)配置(PDM Generation Options)”對生成進(jìn)行控制。  若是第一次生成,則使用默認(rèn)的選項“生成新的物理數(shù)據(jù)模型(Generate New PhysicalData Model)”,但必須選擇數(shù)據(jù)庫管理系統(tǒng)類型,這是由于不同的數(shù)據(jù)庫管理系統(tǒng)要生成的數(shù)據(jù)定義語句可能略有不同,我們可以選擇Microsoft SQL,Server 2000,確認(rèn)后則生成物理數(shù)據(jù)模型。  生成過程首先是一個對概念數(shù)據(jù)模型的檢查過程,錯誤分成兩類,一類是警告,一類是錯誤,警告不影響物理數(shù)據(jù)模型的生成,而一旦發(fā)現(xiàn)錯誤,則必須修改概念數(shù)據(jù)模型以排除這個錯誤,否則不能生成物理數(shù)據(jù)模型?! ⌒薷牧烁拍顢?shù)據(jù)模型后再次生成物理數(shù)據(jù)模型,仍可選擇“生成新的物理數(shù)據(jù)模型(Generate New Physical Data Model)”,此選擇表示將生成一個新的物理數(shù)據(jù)模型,原來已生成的物理數(shù)據(jù)模型被保留,但默認(rèn)的選擇是“更新存在的物理數(shù)據(jù)模型(IJpdate Existing:Physical Data Model)”,如果沒有對生成的物理數(shù)據(jù)模型進(jìn)行修改或不需要保留這些修改,可關(guān)閉“保留修改Preserve.Modifications”選項,確認(rèn)則重新生成PDM并覆蓋原:PDM2.修改物理數(shù)據(jù)模型 有時可能對生成的物理數(shù)據(jù)模型進(jìn)行了修改,此后又修改了概念數(shù)據(jù)模型,概念數(shù)據(jù)模型重新生成物理數(shù)據(jù)模型時,希望能保留原物理數(shù)據(jù)模型的修改。

編輯推薦

  《數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā)》特點是與應(yīng)用的緊密結(jié)合,使讀者在對具體問題的分析能力上有所收獲?! 〉谝徊糠株P(guān)系數(shù)據(jù)庫設(shè)計基礎(chǔ),包含了實用的數(shù)據(jù)庫設(shè)計所要用到的理論和技術(shù),分析了各種常見的設(shè)計方法的特點和在性能、效率卜的優(yōu)劣  第二部分SQL程序設(shè)計,包含了各種數(shù)據(jù)庫端的程序開發(fā)技術(shù),重點討論各種技術(shù)的特點和應(yīng)用場合,復(fù)雜算法的實現(xiàn),對SQL和核心語句SELECT應(yīng)用技巧方面進(jìn)行了深入和  獨(dú)特的介紹  第三部分?jǐn)?shù)據(jù)庫應(yīng)用程序界面和中間層設(shè)計,包括C/S架構(gòu)在線式應(yīng)用程序設(shè)計、C/S架構(gòu)斷開式應(yīng)用程序設(shè)計和B/S架構(gòu)多層應(yīng)用程序的設(shè)計與開發(fā)。

圖書封面

評論、評分、閱讀與下載


    數(shù)據(jù)庫設(shè)計及其應(yīng)用程序開發(fā) PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7