vb 與 .accdb 格式的access數據庫的連接方法


在用vb連接access數據庫時,出現了這樣的錯誤:

這是你的數據庫格式不被 程序識別。vb默認的一般是.,mdb  access數據庫格式!這時我們看一下我們要連接的

是.accdb 格式的。

看一下代碼,我們以前使用的是:

Provider=Microsoft.jet.oledb.4.0

當數據庫格式發生變化時,連接語法格式就變了:Microsoft office 12.0 access database engine oledb provider 這時連

接字符創立已經有的,我們把它填上以后就成如下錯誤了。

 

為什么呢?原因是,.accdb 數據格式不適用jet 引擎連接了。而是:provider=microsoft.ace.oledb.12.0

這樣一改就可以連接上了。


 o7版以前的access數據庫的格式都是.mdb 的,而vb6.0 本身帶的數據庫格式也是.mdb的,所以大家也都習慣了連

接.mdb格式的access數據庫,但是07版以后的數據庫格式就成了 .accdb 的了,在連接的過程中可就要做一下改變

了。

總結一下:通常連接數據庫我們可以使用下面兩種連接方法:

添加引用,使用代碼連接。

解決如下:

一、引用連接

添加引用,使用代碼連接。工程——引用——microsoft  activeX data objects  2.5 library

代碼窗口中加入:

Dim objcn As NewConnection

    Dim objrs As New Recordset

    Dim strsql As String

     objcn.ConnectionString ="provider=microsoft.ace.oledb.12.0;" & "data source="& App.Path & "\3.accdb"         (3為數據庫的名字)

    objcn.Open

   

    strsql = "select 密碼 from 3 where賬號='" & username & "'"                    (賬號表中的字段,username為自定義的變量)

     Set objrs.ActiveConnection = objcn

     objrs.Open (strsql)

 

 

二、控件連接:

1,工程——部件——添加 microsoft ado data  control  6.0   控件。

 

 

2、屬性設置:

點擊生成按鈕,打開連接字符串,選中,microsoft office 12.0 access database engine ole db provider 

 

 

3、設置連接路徑。


然后在連接選項看中填入你的數據庫路徑。測試連接,如果連接成功,則說明數據庫跟你的vb程序綁定了。


 

4、設置紀錄源:



 

就這樣你的2007以上的access 數據庫就可以連接vb程序了。

 

這一切的大前提就是你會用officeaccess建立數據庫,且是正確的數據庫哦!

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM