「VB5 與資料庫程式設計」目錄


各章概說

第 1 章 資料庫輕鬆上路
第 2 章 資料庫的組織結構
第 3 章 Recordset ─ 天字第一號的資料庫物件

    第 1 章以 Data 及 DBGrid 控制元件寫出第一個資料庫程式 ,
    第 2 章瞭解資料庫的基本組織結構 ,
    第 3 章認識 VB 資料庫中最重要的物件,
    這三章是進入資料庫的基礎 , 不可忽視 !

第 4 章 Data-Aware (資料感知)控制元件

    Text 、 CheckBox 、 ComboBox 、 Image … 等 VB 的基礎控制元件在資料庫的程式設計中也都有它們好用的地方 , 舉例來說 , 想把圖片存入資料庫之中 , 就非得使用 Image(或 PictureBox) 控制元件不可。

第 5 章 初探 SQL

    SQL (Structured Query Language) 是通行於資料庫的語言 , 它比一般的程式語言簡單 , 但是在操作資料庫的能力上 , 則有如一把尚方寶劍 , 指令一下 , 資料庫便會乖乖地把資料存取的問題處理好 。

    本章先從最常用的 SQL 指令 ─ Select 開始解說 。 除了 Select 指令之外 ,另一個重點則是如何在 VB 程式中把 Select 指令下給資料庫。

第 6 章 資料表的建立

    如何利用 VB 所提供的「資料庫管理員」建立資料庫(表) , 如何將 dbf 、 Text … 等不同格式的檔案匯入 VB 的 mdb 資料庫,是本章的重點。

    值得注意的是 VB 所提供的「資料庫管理員」並不會建立符合中文特性的資料庫 , 而匯入 dbf、Text … 等格式的檔案時亦有錯誤 , 為了解決這些問題 , 筆者特別修改了「資料庫管理員」的原始程式碼 , 除了編譯成新的執行檔之外 , 修改後的原始程式碼亦附在本書光碟中。

第 7 章 索引 (Index) ─ 搜尋資料之噴射引擎

    索引是決定資料庫速度最重要的一項技術 , 如果您聽人家說過 :「VB 資料庫的速度很慢」(當然, 這不是真的), 那麼一定要閱讀本章 , 本章筆者特別準備了 120,000 筆的資料 , 除了證明 VB 程式搜尋 120,000 筆資料是瞬間完成之外 , 同時也比較了沒有索引以及索引使用錯誤 , 在執行速度上的天壤之別。

第 8 章 初探 DAO

    DAO(Data Access Objects) 是微軟公司存取資料庫的標準物件群 , 除了 VB/Access 之外 , 其餘像 VC++ 、 Excel … 也都是使用 DAO 的物件群來存取資料庫的。

    DAO 難不難 ? DAO 很龐大 , 但請不要把它想成太困難的東西 , 本章筆者以大家熟悉的 Data 控制元件為出發 , 逐步進入 DAO 物件群的使用 , 雖然還沒有介紹太多的物件 , 但卻是後續使用 DAO 很重要的基礎。

第 9 章 Grid 控制元件

    不必撰寫任何程式 , 就具備資料錄瀏覽 、 修改 、 新增 、 及刪除的功能 , 是 Grid 類型控制元件最吸引人的地方。

    VB 所提供的 Grid 控制元件有 DBGrid 及 MSFlexGrid 兩種 , 各有它們的優點 , 如何善用它們的優點是本章的重點。

第 10 章 再探 Recordset

    Recordset 是 DAO 最重要的物件 , 而本章也是本書極度重要的一章 。雖然本書第 3 章已經介紹過 Recordset 物件 , 但只有閱讀過本章 , 才能夠完整地掌握到 Recordset 物件的各種用法。

第 11 章 再探 SQL

    資料庫曰:「不學 DAO , 無以言 ; 不學 SQL , 無以立」 , SQL 與 DAO 是 VB 資料庫最重要的兩項技術 , 第 5 章初步介紹了 SQL , 本章要進一步探考統計、 子集合查詢、 交叉表… 等功能的 Select 指令, 及可更新資料的 Action Query

第 12 章 關連性(Relation) ─ 資料庫最要命的課題

    關連性的觀念十分重要 , 但不容易學習 , 也不容易講授 , 為了撰寫本章 , 筆者苦思了很久 , 後來決定捨棄傳統教科書的解說方法,而改從實際的資料庫著手,說明哪一類資料庫應該建立成關連性資料庫,以及建立的過程、注意事項、建立之後的程式設計…等。

第 13 章 DAO 與資料庫

    又來到 DAO 了 , 本章著重實務面的問題解決 , 例如: 如何為資料庫加密 ? 如何開啟含有密碼的資料庫 ? 如何開啟光碟中的資料庫? 如何建立符合中文特性的資料庫? … 在本章中均有解答 。

第 14 章 使用外部資料庫

    把 dbf、Text、html、Excel … 等不同格式的檔案當成外部資料庫 , 直接加以開啟 , 是本章最重要的功能 。 此外, 如何使用 dbf 的索引檔、 是否可以存取網路上的 html 檔案…, 本章亦有說明。

第 15 章 Crystal Reports 報表產生器

    報表程式怎麼寫呢 ? 如果從資料的角度來看 , 並不困難 , 只要利用 SQL 指令進行資料的選取或統計 , 再利用 Recordset 物件讀取個別欄位的資料 , 就可以將使用者期望的資料展現出來 ; 但如果從印表的角度來看, 就沒那麼簡單, 因為我們必須同時考慮: 資料的長短、 欄位的對齊、 輸出位置的安排、 紙張的大小…等問題, 寫過報表程式的人就知道, 這些事情簡直就煩死了, 所以便有了「報表產生器」的誕生。

    本章所介紹的是 VB 所提供的報表產生器 ─ Crystal Reports。

第 16 章 ODBC資料庫存取 ─ 以 SQL Server 為例

    如何透過網路存取 Server 資料庫呢? 本章以 SQL Server 為例, 說明 ODBC 連線的必要條件、 連線過程、 可能失敗的原因…, 以及連線之後的資料存取 ─ 包含:直接開啟資料庫、 連結資料表、 Stored Procedure 的執行… 等。

第 17 章 超速 21 招

    如果您又聽到有人說:「VB 資料庫的速度很慢」, 別忘了請他來閱讀本書及本章。

附錄-A 電子書製作實錄

    筆者撰寫「VB5 實戰講座」一書時, 為了提供讀者更多的資訊, 特別撰寫程式把「VB 實例領航手冊」(4.0 版) 一書全部的內容, 從 Word 檔案中轉成 VB 程式可以瀏覽的資料庫, 然後收錄於光碟中, 筆者稱之為「電子書」。

    本附錄旨在解說「電子書」的製作過程, 光碟中則附有完整的原始程式碼。

附錄-B 我如何收集 120,000 筆的資料

    為了證明 VB 資料庫的速度, 筆者收集了 120,000 筆的資料, 這些資料是怎麼收集的呢? 輸入嗎? 筆者可沒瘋了, 本附錄告訴您筆者收集資料的完整過程, 收集資料過程中所撰寫之程式亦附在光碟中。


章節目錄

第 1 章 資料庫輕鬆上路

    1-1 第一個資料庫程式
    1-2 資料庫檔案、Data、DBGrid 的關係

第 2 章 資料庫的組織結構

    2-1 以實例瞭解資料庫組織結構
    2-2 與資料庫組織結構相關的物件

第 3 章 Recordset ─ 天字第一號的資料庫物件

    3-1 Recordset 與資料表的存取
    3-2 Recordset 與資料錄的增刪修改
    3-3 Recordset 與資料錄的搜尋

第 4 章 Data-Aware (資料感知)控制元件

    4-1 使用資料感知元件的基本觀念
    4-2 資料錄的刪除與新增

第 5 章 初探 SQL

    5-1 使用 SQL 的基礎
    5-2 Select 句型初解
    5-3 QueryDef: 儲存 SQL 指令的物件
    5-4 Select 指令的實務應用

第 6 章 資料表的建立

    6-1 VB 資料庫的中文問題與解決之道
    6-2 資料庫(表)的建立
    6-3 轉取外部資料

第 7 章 索引 (Index) ─ 搜尋資料之噴射引擎

    7-1 索引的基本原理
    7-2 加裝噴射引擎的方法
    7-3 索引與資料搜尋
    7-4 唯一的索引給唯一的資料錄
    7-5 索引的其他特性

第 8 章 初探 DAO

    8-1 從 Data 控制元件到 DAO 的體驗
    8-2 Database 物件:操作資料庫的龍頭
    8-3 使用 DAO 的基本觀念

第 9 章 Grid 控制元件

    9-1 使用 MSFlexGrid
    9-2 使用 DBGrid

第 10 章 再探 Recordset

    10-1 使用 Recordset 必知之觀念與技巧
    10-2 幾種不同型態的 Recordset 物件
    10-3 建立 Recordset 物件的方法

第 11 章 再探 SQL

    11-1 非僅 Select,統計 Select
    11-2 從 Select 的結果中再選取資料
    11-3 SubQuery (子集合查詢)
    11-4 CrossTab (交叉表)
    11-5 Union 聯集查詢
    11-6 Action Query

第 12 章 關連性(Relation) ─ 資料庫最要命的課題

    12-1 一個關於「台北市」的故事
    12-2 關連性與資料表的組合
    12-3 「新觀念的 VB5 教本」賣了幾本?
    12-4 幾種關連性的型態
    12-5 Join ─ 組合資料表的語法

第 13 章 DAO 與資料庫

    13-1 資料庫檔案與資料庫的開啟
    13-2 以 DAO 建立資料表
    13-3 以 DAO 建立 QueryDef 物件

第 14 章 使用外部資料庫

    14-1 以 Data 控制元件使用外部資料庫
    14-2 使用外部資料庫的基本觀念
    14-3 以 DAO 使用外部資料庫
    14-4 外部資料庫使用實務

第 15 章 Crystal Reports 報表產生器

    15-1 使用 Crystal Reports 的基礎
    15-2 動態設定報表的資料
    15-3 印地址標籤
    15-4 交叉表 (CrossTab)
    15-5 統計型報表

第 16 章 ODBC資料庫存取 ─ 以 SQL Server 為例

    16-1 從 mdb 到 Server 資料庫
    16-2 使用 ODBC 資料庫的基礎
    16-3 存取 ODBC 資料庫的方法

第 17 章 超速 21 招

    第 1 招  使用索引 (Index)
    第 2 招  使用 Seek、Select, 而不是 Find
    第 3 招  使用 Action Query
    第 4 招  使用 BeginTrans/CommitTrans 方法
    第 5 招  增加記憶體
    第 6 招  壓縮資料庫及重組硬碟
    第 7 招  為 Join 的欄位設定索引
    第 8 招  選取的欄位越少越好
    第 9 招  以 Between/And 取代 >= And <=
    第 10 招  盡可能以整數型別來定義欄位
    第 11 招  限制 ODBC 資料表的查詢筆數
    第 12 招  使用 SnapShot 開啟 ODBC 資料表
    第 13 招  以「連結資料表」使用外部資料庫
    第 14 招  使用 Count(*)、而不是 Count (欄位)
    第 15 招  將外部資料庫轉入 mdb 資料庫
    第 16 招  使用 GetRows 讀取資料錄
    第 17 招  內層 Select 指令應避免使用 VB 函數
    第 18 招  以空間換取時間
    第 19 招  使用定型變數
    第 20 招  減少物件的層次
    第 21 招  懷疑它、測試它

附錄-A 電子書製作實錄

附錄-B 我如何收集 120,000 筆的資料