420 likes | 614 Views
新觀念的 VB6 教本. 第 17 章 資料庫 -- Database. 17-1 第一個資料庫程式. 股票行情表資料庫. stock01.mdb 資料庫. 第一個資料庫程式 Step1-1.
E N D
新觀念的 VB6 教本 第 17 章 資料庫 -- Database
股票行情表資料庫 • stock01.mdb資料庫
第一個資料庫程式Step1-1 • 由於 ADODC 及 DataGrid 都屬於外掛式的控制元件,使用之前必須先經過引用的程序,引用的方法是:首先選取 VB 功能表的「專案->設定使用元件」,待出現「設定使用元件」交談窗時,選取其中的「Microsoft ADO Data Control 6.0(OLEDB)」及「Microsoft DataGrid Control 6.0 (OLEDB)」。
第一個資料庫程式Step2 • 在表單上佈置一個 ADODC(工具箱的 ),佈置之後的 ADODC 如下:
第一個資料庫程式Step3-1 • ADODC 屬性的設定:在ADODC 上面按下滑鼠右鈕,待出現快顯功能表時,選取「ADODC的屬性」,接著在「屬性頁」中選取「使用連線字串」,然後按下「建立」鈕。
第一個資料庫程式Step3-3 • 在接下來的「資料連接內容」交談窗中,先選取「Microsoft Jet 3.51 OLE DB Provider」,然後按下「下一步」鈕,接著在「連接」頁籤中,按下「…」鈕選取硬碟中的 stock01.mdb 資料庫 。
第一個資料庫程式Step3-5 • 完成以上的設定之後,請檢視屬性視窗中 ADODC 的 ConnectionString 屬性,結果內容為「Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info =False;Data Source=C:\vb6db\mdb\stock01.mdb」。
第一個資料庫程式3-6 • 在這一串字串中,“;” 為參數的分隔符號,因此設定之後的 ConnectionString 屬性是由以下三個參數所構成的: • 以上參數表示 ADODC 將會藉助「Microsoft Jet OLE DB 3.51 Provider」這個 OLE DB 驅動程式來開啟「C:\vb6db\mdb\stock01.mdb」資料庫檔案。
第一個資料庫程式4-1 • 回到 ADODC 的「屬性頁」,選取「資料錄來源」頁籤,然後選取「命令類型」欄位底下的「2 - adCmdTable」,接著再選取「資料表或預存程序的名稱」欄位底下「股票行情表」。
第一個資料庫程式4-3 • 完成以上設定之後,請檢視屬性視窗中 ADODC 的 CommandType (指令類型)及 RecordSource (資料錄來源)屬性,結果分別等於「2 - adCmdTable」及「股票行情表」,這表示我們也可以直接利用屬性視窗來設定這個兩個屬性,其效果跟本步驟相同。
第一個資料庫程式5 • 在表單上佈置 DataGrid 控制元件(工具箱的 ),然後將它的 DataSource 屬性設定為 "Adodc1" 。
第一個資料庫程式 6-1 • 按 F5 鍵執行程式,結果 DataGrid 會顯示 stock01.mdb 資料庫檔案中的「股票行情表」,請將滑鼠移到欄位抬頭交接處,然後以拉曳的方式改變欄位的寬度,最後顯示的表單如下:
第一個資料庫程式的相關操作 (2) • 瀏覽:使用 DataGrid 的捲動軸可瀏覽「股票行情表」,瀏覽時請注意 DataGrid 左邊的 符號,此一符號所在的位置表示「股票行情表」的「目前資料錄」。 • 修改:以滑鼠點選欲修改的欄位,當該欄位出現反白及輸入游標時,即可編輯進行修改。
第一個資料庫程式的相關操作 (3) • 除了 DataGrid 的捲動軸可用來瀏覽資料之外,ADODC 的按鈕也具有瀏覽的功能,如下:
增加「新增」與「刪除」功能 • 先結束程式,然後將 DataGrid 的AllowAddNew(允許新增)屬性及AllowDelete (允許刪除)屬性設定為 True,接著再執行程式,程式即具有新增及刪除的功能。
新增及刪除的操作方式(2) • 新增:將目前資料錄移到最後面,此時可在最後一筆資料錄的後面看到的符號,以滑鼠點選此一符號右邊的欄位,即可輸入資料以新增資料錄。 • 刪除:以滑鼠點按資料錄左邊的 空白處,則該資料錄將被選取,接著按下Delete 鍵即可刪除資料錄。
自我練習 • 在第一個資料庫程式中,將 ADODC 的 RecordSource 屬性改成 “買賣記錄”,然後執行程式,查閱 DataGrid 的內容。
資料庫檔案 • 對 VB 程式而言,可操作的資料庫檔案有: mdb 格式:微軟的 Access 1.0 資料庫,後來 VB 新增了資料庫的功能,也是以 mdb 格式為標準的資料庫檔案格式。 dbf 格式:Dbase 資料庫軟體,也是早期 PC 資料庫使用得最為普遍的資料庫。 其他格式:paradox 資料庫、excel 試算表、文字檔、含有表格的 HTML 檔案…等。
ADODC 與資料庫檔案的關係(1) • VB 提供了ADODC,功用是處理檔案解析的工作,並且根據程式將來可能操作資料庫的方式(例如讀取、寫入、新增、刪除…)建立了必要的操作介面(包含屬性、方法、及事件),然後封裝成為一控制元件。 • 對資料庫程式而言,如果透過 ADODC來存取資料,不必瞭解資料庫的檔案格式,只要透過 ADODC 所提供的操作介面,即可達到存取資料庫的目的。
ADODC 與資料庫檔案的關係(2) • 把資料庫程式、ADODC、與資料庫檔案的關係表示成下圖:
DataGrid 與 ADODC 之間的關係(1) • 雖然 ADODC 具有存取資料庫的能力,卻沒有提供顯示的功能,應使用 DataGrid 控制元件。 • 使用 DataGrid 來顯示資料庫的內容必須先設定好 DataSource 屬性,此一屬性的作用是讓 DataGrid 與 ADODC 產生連結的關係,也就是告訴 DataGrid 它所存取的是哪一個 ADODC 所開啟的資料庫,接著 DataGrid 就會自動使用 ADODC 的介面成員,而將資料庫的內容顯示出來。
DataGrid 與 ADODC 之間的關係(2) • 把資料庫程式、DataGrid、與 ADODC 的關係表示成下圖:
ADODC 的屬性及參數 (1) • ConnectionString(連線字串)屬性:第一個資料庫程式的步驟3(p.494)就是為了設定好這個屬性,此一屬性含有兩個最重要的參數 Provider 及 Data Source。
ADODC 的屬性及參數 (2) • Provider 參數:Provider 更完整的稱呼是 OLE DB Provider,主要的用途在指定存取資料庫所使用 OLE DB 驅動程式。以 mdb 資料庫為例,所使用的 OLE DB 驅動程式是「Microsoft Jet 3.51 OLE DB Provider」。
ADODC 的屬性及參數 (3) • Data Source(資料來源)參數:此一參數通常用來指定資料庫檔案的完整路徑名,有了此一參數,ADODC 方得以開啟資料庫檔案。
ADODC 的屬性及參數 (4) • CommandType(指令類型)屬性:在第一個資料庫程式中,我們將此一屬性設定成 adCmdTable,表示「資料表」(Table)。
ADODC 的屬性及參數 (5) • RecordSource(資料錄來源)屬性:在第一個資料庫程式中,我們將此一屬性設定成「股票行情表」,表示程式要存取資料庫中「股票行情表」資料表之中的資料錄。
DataGrid 控制元件的屬性 (1) • DataSource(資料來源)屬性:由於 DataGrid 控制元件並不直接存取資料庫,因此須將此一屬性設定成某一個 ADODC,DataGrid 控制元件方才具備存取資料庫的能力。
DataGrid 控制元件的屬性 (2) • AllowAddNew(允取新增)屬性:若要讓使用者可以在 DataGrid 控制元件之中新增資料錄,必須將此一屬性設定為 True。
DataGrid 控制元件的屬性 (3) • AllowDelete(允取刪除)屬性:若要讓使用者可以在 DataGrid 控制元件之中刪除資料錄,必須將此一屬性設定為 True。
DataGrid 控制元件的屬性 (4) • AllowUpdate(允取更新)屬性:由於此一屬性的預設值為 True,所以在第一個資料庫程式中,我們並沒有設定此一屬性,如果將此一屬性設定為 False,則使用者無法在 DataGrid 控制元件之中修改資料錄的內容。
資料庫未來的研讀方向 • 一般性資料庫軟體 。 • 資料庫存取物件 。 • SQL:SQL(Structured Query Language,結構化查詢語言)。 • 關連性資料庫的觀念。 • Server等級資料庫 。 • Web資料庫 。