中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      非Access數據庫在VB中的編程及應用

      時間:2024-06-27 10:19:12 計算機畢業論文 我要投稿
      • 相關推薦

      非Access數據庫在VB中的編程及應用

      摘要

      Visual Basic有著強大的數據庫存取能力,不僅能夠直接支持Ms Access數據庫,而且通過其內部安裝的ISAM驅動程序使它能間接支持FoxPro、dBASE等外來數據庫。本文不僅從VB數據庫體系結構的角度探討了VB對這些外來數據庫的支持,還結合了一些實例具體闡述了使用數據庫存取對象變量的方法實現這些外來數據庫的新建、庫結構修改、顯示及其運行環境設置。

      關鍵詞

      Visual Basic Access, 外來數據庫,數據庫

      正文

      存取對象變量庫結構作為一個功能較完備的Windows軟件開發平臺,Visual Basic專業版提供了對數據庫應用的強大支持。尤其提供了使用數據控件和綁定控制項,使用數據庫存取對象變量(Data Access Object Variable),直接調用ODBC 2.0 API接口函數等三種訪問數據庫的方法。對其標準內置的Ms Access數據庫,它可以提供不弱于專業數據庫軟件的支持,可以進行完整的數據庫維護、操作及其事務處理。在VB中,將非Access數據庫稱為外來數據庫。對于FoxPro、dBASE、Paradox等外來數據庫。雖然借助VB的Data Manager 能夠對這些數據庫進行NEW、OPEN、DESIGN、DELETE等操作,但在應用程序的運行狀態中并不能從底層真正實現這些功能。本文從使用數據庫存取對象變量的方法出發,實現了非Access格式數據庫(以FoxPro數據庫為例)的建新庫、拷貝數據庫結構、動態調入等操作,闡述了從編程技巧上彌補VB對這些外來數據庫支持不足的可行性 。

      一 、 VB數據庫的體系結構具體的VB的數據庫結構。

      VB數據庫的核心結構是所謂的MicroSoft JET數據庫引擎,JET引擎的作用就像是一塊"面 板",在其上可以插入多種ISAM(Indexed Sequential Access Method,即索引順序存取方 法) 數據驅動程序。JET引擎為Access格式數據庫提供了直接的內部(build-in)支持,這就是VB對Access數據庫具有豐富支持的真正原因。

      VB專業版中提供了FoxPro、dBASE(或 Xbase)、Paradox、Btrieve等數據庫的ISAM驅動程序,這就使得VB能支持這些數據庫格 式。另外,其他的許多兼容ISAM的驅動程序也可以通過從廠商的售后服務得到。因而從理論上說,VB能支持所有兼容ISAM的數據庫格式(前提是只需獲得這些數據庫的ISAM驅動接口程序)。

      由上可見,Ms JET引擎實質上提供了:一個符合ANSI標準的語法分析器;為查詢結果集的使用而提供的內存管理功能;同所支持的數據庫的外部接口;為應用代碼提供的內部接口。實際上,在VB中從一種數據庫類型轉化為另一種數據庫類型幾乎不需要或只需要很少的代碼修改。而且,盡管dBASE、Paradox本身的DDL (Data Definition Language,即數據定義語言)和DML(Data Manipulation Language,即數據操縱語言)是非結構化查詢的,但它們仍然可以使用VB的SQL語句和JET引擎來操縱。

      從VB的程序代碼的角度來看,ODBC,ISAM驅動程序以及Ms Access數據庫的整個外部結構夠可以統一為一個一致的編程接口。也即是說,提供給VB應用程序員的記錄集對象視圖同所使用的數據庫格式及類型是相互獨立的。即對FoxPro等數據庫仍然可以使用眾多的數據庫存取對象變量,這就為非Access數據庫的訪問提供了最重要的方法。  

      二 、使用非Access數據庫時的參數設置及配置文件的參數讀取如果在VB的程序中使用了數據庫的操作,將應用程序生成EXE文件或打包生成安裝程序后,則必須提供一個配置 (.INI)文件,在INI文件中可以對不同類型的數據庫進行設置。如果找不到這個INI文件, 將會導致不能訪問數據庫。通常情況下,INI文件的文件名和應用程序的名稱相同,所以如果沒有指明,VB的程序會在Windows子目錄中去找和應用程序同名的INI文件。可以使用VB中的SetDataAccessOptions語句來設置INI文件。

      SetDataAccessOptions語句的用法如下:SetDataAccessOptions 1 ,IniFileName其中IniFileName參數指明的是INI文件的帶路徑的文件名。值得注意的是,當應用程序找不到這個INI文件時,或在調用 OpenDataBase函數時對其Connect參數值沒有設定為VB規定的標準值,如對FoxPro 2.5格式設定為了" FoxPro;"(應為" FoxPro 2.5; "),或者沒有安裝相應的ISAM驅動程序,則此時VB會顯示一條錯誤信息" Not Found Installable ISAM "。通常,INI文件在應用程序分發出去以前已經生成,或者在安裝時動態生成,也可以在應用程序中自己生成。 通常這種 INI文件中有" [Options]"、"[ISAM]"、" [Installed ISAMs]"、"[FoxPro ISAM]"、"[dBASE ISAM] " 、" [Paradox ISAM] "等設置段,對于一個完整的應用程序則還應有一個屬于應用 程序自己的設置段如" [MyDB]”。可在其中設置DataType、Server、DataBase、 OpenOnStartup、DisplaySQL、QueryTimeOut等較為重要的數據庫參數,并以此限定應用程序一般的運行環境。 Windows API接口函數在Kernel.exe動態鏈接庫中提供了一個OSWritePrivateProfileString函數,此函數能按Windows下配置文件(.INI)的書寫格式寫入信息。

      在通常情況下,應用程序還需要在運行時讀取配置文件內相關項的參數。比如PageTimeOut(頁加鎖超時時限)、MaxBufferSize(緩沖區大小)、LockRetry(加鎖失敗時重試次數)等參數,通過對這些參數的讀取對應用程序運行環境的設定、潛在錯誤的捕獲等均會有很大的改善。

      設此應用程序的配置文件為MyDB.INI,則具體過程如下:Funtion GetINIString$( Byval Fname$ ,Byval szItem$ ,Byval szDeFault$ ) ' 此自定義子函數實現INI 文件內設置段內參數的讀取Dim Tmp As String,x As Integer Tmp =

      【非Access數據庫在VB中的編程及應用】相關文章:

      VB與MATLAB混合編程在流量標定系統數據庫中的應用03-07

      任務驅動式教學法在Access數據庫教學中的應用03-19

      《Access數據庫應用》教學改革與實踐12-11

      基于Mschart的數據庫圖表應用編程03-18

      VB5.0中數據庫查詢模塊的實現03-03

      VC++編程在步進電機控制中的應用03-07

      JDBC數據庫編程的研究03-15

      應用LabSQL實現LabVIEW中數據庫的訪問03-07

      非言語交際在英語教學中的應用03-18

      主站蜘蛛池模板: 邯郸市| 中文国产成人精品久久一区| 成在线人免费无码高潮喷水| 中文字幕人妻一区二区三区四区 | AV在线毛片| 罗田县| 人妻少妇精品视中文字幕国语| 韩国美女av一区二区三区四区 | 欧美日韩亚洲国产无线码| 国产福利97精品一区二区| 亚洲精品久久久中文字| 亚洲伦理精品一区二区三区| 国产精品自拍首页在线观看| 国产精品日本天堂| 无码熟妇人妻AV不卡| 江达县| 蜜桃一区二区免费视频观看 | 成年男人裸j照无遮挡无码| 视频一区二区三区国产在线| 亚洲一区二区三区四区三级视频| 边坝县| 欧美日本视频一区| 在线观看视频午夜国产| 欧洲无码一级毛片无遮挡| 国产午夜精品美女裸身视频69| 亚洲av免费不卡一区二区| 久久精品成人亚洲另类欧美| 黄冈市| 本溪市| 同江市| 亚洲人成网站在线播放小说| 林州市| 久久99久久99精品免观看女同 | 欧美亚洲另类自拍偷在线拍| 国产精品无码mv在线观看| 买车| 日本不卡一区二区高清中文| 99精品视频69v精品视频免费| 文安县| 人妻系列无码专区久久五月天| 国内精品久久久久久久亚洲|