现在的位置: 首页 > 综合 > 正文

总结 vb与数据库的连接方法

2013年11月28日 ⁄ 综合 ⁄ 共 1809字 ⁄ 字号 评论关闭
  • 总结:vb与数据库连接方式,两种分法。
  • 根据是否使用ODBC(驱动程序)来分:

1.有源连接

 

2.无源连接。

其中有源连接指的是:通过设置数据源(ODBC)来连接

据我的观察无源连接选择的是oledb驱动程序,(这些驱动程序请参考:应用程序和数据库的连接方式 )

当我们设置数据绑定控件的连接字符串时出现如下窗口:

 

 

 

上图中每一行都是oledb
作为驱动程序,当然细心的同学会发现其中有一项(图中灰色的部分)是:Microsoft OLE DB Provider for ODBC

Microsoft OLE DB Provider for ODBC (MSDASQL)
一项允许在 OLEDB
ADO(它在内部使用
OLEDB
)上构建的应用程序通过 ODBC
驱动程序访问数据源的技术。 MSDASQL
是用于连接到 ODBC(而不是数据库)的
OLEDB
访问接口。

 相同:不论有源还是无源都必须添加相应的组件。

 

 

亦可根据是否使用控件来分:

1
无需代码连接数据库;
控件绑定连接和使用数据环境设计器。

2
引用,代码连接数据库。

下面我们来谈谈具体实现:

有源连接:首先配置odbc
数据源。

在开始——程序——管理工具——数据源(odbc),然后在里进行添加设置你的数据库。

出现如下对话框:点击添加

在下图中选出你要连接的数据源库类型

这以选择access数据库为例:在数据源中输入自定义数据名称(myaccess),在数据局框框中点选择:出现选择数据库对话框,在这里你可以选择你要连接的数据库存放的位置,确定后,你的dsn 数据源就建立完成了。

这是回到odbc数据源窗口,就会出现你刚才建立的数据库名称。(我们建立的是myaccess)

然后在编码时我们使用ADO ,所以首先引用microsoft 
activeX
  data objects 2.5 library.然后写代码:如下:直接使用open打开,不使用连接字符串connctionstring

set objcn as new connection

objcn.open"dsn=name"       name
指的是你数据库在odbc中的名,而不是你数据库原来的名字。

这就是有源连接方法,有的人觉得配置的时候不方便,下面是无源链接的方法。

 

 

无源连接

如果采有代码的话:

              先引用:microsoft  activeX  data objects 2.5 library

                  代码窗口中:

                   Dim objcn  As New Connection

                     Dim objrs  As New recordset

                    objcn.ConnectionString = "provider=microsoft.ace.oledb.12.0;" & "data source=" & App.Path & "\3.accdb"

                     objcn.Open

                         objrs.CursorLocation = adUseClient

                        objrs.CursorType = adOpenStatic

                       Set objrs.ActiveConnection = objcn

                         objrs.Open "3"              
此处3为数据库的名字。

 

 

 如果采用控件绑定数据库连接:

                           添加部件后,如:data
控件,adodc控件。对其属性进行设置。

                           data
控件设置:databasename,recordsource .

                               adodc
控件右击设置属性:点击连接字符串:右边的生成,就会弹出上图对话框,你可以选择你需要的不同的驱动,连接不同类型的数据库。

 

 

 

设置成功后,测试连接,测试成功,那么数据库与vb的连接就搞定了。

 

     选中之后还需要设置记录源类型,

 

设置好以后,数据库就被绑定了,我们就可以访问数据库中的数据了。

 

几种方法都有各自的好处,至于在使用的过程中,你根据自己的需要选择方法,才有最合理的。

抱歉!评论已关闭.