在用vb 连接 access 数据库 时,出现了这样的错误: 这是你的 数据库 式不被 程序识别。vb默认的一般是.,mdb access 数据库 式!这时我们看一下我们要 连接 的 是.accdb 式的。 看一下代码,我们以前使用的是: Provider=Microsoft.jet.oledb.4.0 当 数据库
在用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建立 数据库 ,且是正确的 数据库 哦!
查看更多关于vb与.accdb格式的access数据库的连接方法的详细内容...