使用VB访问数据库

合集下载

VB通过DAO访问Access数据库

VB通过DAO访问Access数据库

VB通过DAO访问Access数据库DAO就是Database Access Object,数据库访问对象的英文缩写。

在VB中提供了两种与Jet数据库引擎接口的方法:Data控件和数据访问对象(DAO)。

Data控件只给出有限的不需编程而能访问现存数据库的功能,而DAO模型则是全面控制数据库的完整编程接口。

Data控件将常用的DAO功能封装在其中,它与DAO控件的关系就好象内存与CACHE之间的关系一样,所以这两种方法并不是互斥的,实际上,它们常同时使用引用DAO类型库1、从“工程”菜单中选择“引用”菜单项;2、在可引用列表框中选择“Microsoft DAO 3.6 Object Library”项3、最后“确定”即可设置DAO数据类型变量DAO数据类型变量共分成两种:1、Database变量Public db As Database对应于Access数据库,通常在模块中被定义为Public全程变量2、RecordSet变量Dim rs As RecordSet设置DAO数据类型变量(二)建立了数据库对象变量后,我们便可打开数据库了,在一般情况下都只是访问一个数据库,当打开数据库后再对数据库中的各个记录进行操作,这就要用到Recordset 对象建立记录集例如:打开数据库Private Sub Command_OpenDatabase_Click() Dim db as Database Dim rs As Recordset Set db = OpenDatabase ( App.path & "\数据库名称.mdb" ) Set rs = db.OpenRecordset ( " select * from 表名" ) End Sub 这样,数据库中的记录便放到Recordset中,可以进行后续操作了Opendatabase 方法Opendatabase 方法是打开数据库并返回此数据库的database对象,其语法如下:Set database的对象变量=opendatabase ([数据库名称及路径],[除外性],[只读]) 除外性:由true和false值所构成,当值为true时代表仅允许唯一的使用者使用数据库。

VB访问数据库的方法及接口的比较

VB访问数据库的方法及接口的比较

VB访问数据库的方法及接口的比较【摘要】本文将对VB访问数据库的方法及接口进行比较分析。

首先介绍了ADO连接方式、ODBC连接方式和DAO连接方式,然后分析了它们各自的优缺点和适用场景。

通过比较各种连接方式,读者可以了解到在不同情况下应该如何选择合适的数据库连接方式。

结论部分提出了选择合适的数据库连接方式和灵活运用不同的接口是提高数据库操作效率和代码质量的关键。

本文旨在帮助读者更好地了解VB访问数据库的方法,提高数据操作的效率和精度。

【关键词】VB, 数据库访问方法, 接口, 比较, ADO, ODBC, DAO, 优缺点, 适用场景, 选择, 灵活运用.1. 引言1.1 VB访问数据库的方法及接口的比较Visual Basic(VB)是一种广泛使用的编程语言,用于开发Windows应用程序。

在开发应用程序的过程中,访问数据库是非常常见的需求。

VB提供了多种访问数据库的方法和接口,如ADO (ActiveX Data Objects)、ODBC(Open Database Connectivity)和DAO(Data Access Objects)。

这些方法和接口各有优缺点,适用于不同的场景。

ADO连接方式是最常用的数据库连接方式之一,它提供了一种简单且高效的方法来连接和操作各种数据库。

通过ADO,开发者可以使用SQL语句来查询和更新数据库中的数据,同时还可以使用数据绑定功能来将数据显示在用户界面上。

ODBC连接方式是一种通用的数据库连接方式,它基于标准化的API接口,可以连接各种类型的数据库。

ODBC提供了一种开放的标准,使得开发者可以轻松地切换和连接不同类型的数据库。

DAO连接方式是一种轻量级的数据库连接方式,专门用于连接Microsoft Access数据库。

它提供了一种简单而直接的方法来操作Access数据库中的数据,适用于一些小型应用程序的开发。

比较各种连接方式的优缺点可以帮助开发者根据实际需求选择合适的方式。

VB连接Access数据库的两种方法

VB连接Access数据库的两种方法

VB连接Access数据库的两种方法首先有一点要注意,数据库的使用与我们以往所使用的文本文件不同.例如我们使用文本文件,来记录各种有用的数据.那么大致有以下几步: 读取文件-- 格式化数据-- 关闭文件-- 使用数据如果数据量较大,需要进行筛选,且存放数据的源文件可能不定时变更,那么我们可以用一个临时文件来存放有用的数据,这样可大大提高程序的效率.要[格式化数据]时,我们首先要进行筛选,然后还得进行分类,这样文件中的字符串才能被转换成有用的信息来供程序使用.这样一来,不用说,处理速度将大大减慢,而且就算你设计的数据格式比较科学,当数据量非常大时,文件的容量也会变的让普通计算机无法承受.相对文本文件来说数据库的使用也大致分为以下几步:打开数据库-- 查找数据-- 使用数据-- 关闭数据库从中可以看出,里面少了一步格式化数据,因为数据库本身在存储数据时,它就是按照一定的格式来进行存储的.其次是,数据库与文本文件返回数据的方法不同.如果把文本文件比作一个Textbox 的话,那么数据库更像是一个ListBox.使用文本文件时我们需要从整个Textbox中取出有用的信息,并进行处理,而Listbox则可以根据需要返回特定的某一项.由于VB本身并不带有可以访问数据库的类,所以我们需要引用一个包含能访问数据库的类来使用数据库.这里我们采用ADODB,相比DAO和能访问数据库的API来说,它比DAO更灵活,更强大;而比起API,它更简单易用,更适合初学者.而Access数据库比起SQL,也相对简单了很多,且能够满足中小型应用程序的需要,所以我们在使用数据库时,选择了Access.就像使用文本文件来存储数据一样,我们需要先设计好数据结构,只不过在设计Access数据库的结构时,我们需要用到其它的程序来进行详细的规划.建议采用的程序是office中的Access或V B自带的VISDATA.当数据库设计好了以后,我们可以开始"数据库编程"了.首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Da ta Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,应用程序或ActiveX 控件都具有向下兼容性,所以我们尽可能选择比较新的版本.以确保程序在能识别旧版本Access 的同时,也能识别较新版本的Access.然后我们需要在程序中创建一个对象.就好比我们在窗体上添加一个FileBox才能看到文件名一样,只有创建了ADO对象,我们才能够访问数据库.常用的对象有两个,Connection和Records et.创建这两个对象的具体方法是:1.在引用后,使用New关键字,如Private Conn As New ADODB.ConnectionPrivate Reco As New ADODB.Recordset2.在没引用时,用CreateObject创建对象:Dim Conn,RecoSet Conn =CreateObject("ADODB.Connection")Set Reco =CreateObject("ADODB.Recordset")创建了对象之后,下一步我们要做的就是打开数据库了.先看下面的代码,可以成功的打开数据库.Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb"这句代码打开了D盘中的Main.mdb这个数据库.Connection.Open方法的第一个参数是连接代码,它将传递给系统的数据库引擎.前半部分"Provider=Microsoft.Jet.OLEDB.4.0",它表示了数据库的类型.不同的数据库可能会不同.后半句"Source=d:\main.mdb"它表示了数据库所在的绝对路径.打开数据库之后,还要打开表.假如数据库中有一个表,表名为"Users",字段有两个,一个为用户名,一个为密码.那么看以下代码.1.想返回"Users"中,[用户名]为"去年烟花"的[密码]Recordset.open "Select 密码From Users Where 用户名='去年烟花'",Connection,1, 1之后我们就可以把用户输入的密码进行比较,看是否允许登录.If Recordset.eof and Recordset.bof thenMsgbox "用户不存在!",16ElseIf PassWord =Recordset("密码").value thenmsgbox "登录成功!",64Elsemsgbox "密码错误!",32End IfEnd IfRecordset.Close2.假设Admin已经成功登录系统,我们想把所有的用户名和密码都显示出来Recordset.open "Select * From Users",Connection,1,1这时,表已经被打开,我们就用以下代码把它显示出来.Do whlie Not Recordset.eofPrint "用户名: " & Recordset("用户名").value & "密码: " & Recordset("密码").valueRecordset.MoveNextLoopRecordset.Close由以上代码示例可以看出,打开表时,可以只打开其中的一个字段,也可以打开所有.第一个参数是SQL语句.Select [字段名] From表名[Where 条件]这里的条件可以省略.且字段名也可以用"*"来代替所有字段.需要注意的是,如果你用(1)中的方法打开,那么(2)后面显示的代码就不能再用在(1)中.因为(1)里并没有打开[用户名]字段,所以这一句Recordset("密码")就没有值存在,还有可能出错.后面的条件,可以用"="、">"、"<"等运算符.比如"Where ID >32".(这里假设[ID]为数字型.)这是打开的部分.第二个很重要的部分就是查询记录.数据库它并不是把所有记录全部放到一个变量中备用的.而是以"当前记录"的形式来返回一个值.所以我们想从中找到有用的信息,就必须要对信息进行定位/筛选.定位:移动到下一条Recordset.MoveNext移动到上一条Recordset.MovePrevious移动到最后一条Recordset.MoveLast移动到第一条Recordset.MoveFrist移动到某一条Recordset.Move Number筛选:Recordset.Find "条件"如:[用方法(2)打开表之后]Private Sub Command1_Click()Recordset.Find "用户名=" & "text1.text"If Recordset.Eof <> True ThenMsgbox "该用户的密码是:" & Recordset("密码").value,64ElseMsgbox "未找到该用户的资料!",16End IfEnd SubMoveNext 只有当Eof不为True时,才可用,否则发生错误.而MovePrevious刚是Bof不为T rue时....而只要Eof 和Bof中有一个不为真时,也就是说只要有一条记录时,它就可以使用.Find 方法中的条件和Open时的第一个参数中的条件表述方法是完全一致的.当在已打开的记录集中,找不到该记录时,Eof为True.找到则当前的值就是符合条件的记录.第三个部分就是添加/修改记录.修改记录很简单,先按以上的方法找到相关记录之后,给记录赋值就可以了.比如:[(修改密码)按方法(1)打开表之后]Recordset("密码").value = "123456"Recordset.Updata需要注意的就是,在修改完成后,要调用Updata方法,这样修改才能生效.而添加记录则可以用以下代码来实现:Recordset.addnewRecordset("用户名").value ="Admin"Recordset("密码").value = "Admin"Recordset.Updata这里,先要调用Addnew方法,增加一条新记录,然后对这个新记录中的各字段赋值,最后再调用Updata方法.到这里就差不多了,最后说一下上面提到的几个方法.Recordset.Open SQL语句,数据源,游标类型,打开方法SQL语句不用说了,就是Select那啥的,目的就是按要求从表中返回数据数据源就是一个打开之后的Connection对象.去他妈的游标类型,填1就可以了[偷笑ing]打开方法对应了几个常数,具体哪几个可以从对象浏览器里看.对应数值的意义:1 只读2 独占3 可写4 自已可写,别人可读Connection.open 连接代码,服务器用户名,密码这里的连接代码就不在多说了,服务器用户名,密码只有在连接远程数据库时才用到.VB如何连接access数据库2009年07月25日星期六下午 07:07VB如何连接access数据库?最近在学习VB,正在研究当中!今天告诉大家VB连接数据库的方法,我知道的有两种:一种是在adodc1的属性里设置数据库文件的路径,这种方法的优点是简单易操作,缺点是,当源文件换了地方后,要重新设置数据库的路径,否则连接不上数据库了。

如何在VB中连接数据库

如何在VB中连接数据库

如何在VB中连接数据库
一、连接方式
1、ODBC数据库连接
打开新工程,在菜单栏上选择“工具”-“Data Links”,可以看到“数据链接”对话框,点击“新建”按钮,此时可以看到“ODBC
Microsoft登录”对话框,点击“帐户”按钮,此时可以看到“ODBC Microsoft登录”对话框,在“服务器”框中填入数据库服务器的IP地址,在“用户名”和“口令”框中填入账号和密码,点击“测试”按钮,
确认能够通过测试,然后点击“完成”按钮,可以得到正确的数据库连接。

2、ADO连接
在工程中添加引用,选择Microsoft ActiveX Data Object 2.8 Library(或者是更高版本),在程序中添加如下代码:
Private Sub Form_Loa
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
End Sub
其中,Data Source指定数据库的IP地址,Initial Catalog指定数
据库名,User ID指定数据库用户名,Password指定数据库口令。

3、DAO连接
打开新工程,在菜单栏上选择“工具”-“Data Links”,可以看到“数据链接”对话框,点击“新建”按钮,此时可以看到“DAO
Microsoft登录”对话框,在“服务器”框中填入数据库服务器的IP地址,在“用户名”和“口令”框中填入账号和密码,点击“测试”按钮,
确认能够通过测试,然后点击“完成”按钮,可以得到正确的数据库连接。

VB与数据库连接的几种方法

VB与数据库连接的几种方法

VB与数据库连接的几种方法在VB中,有多种方法可以连接数据库。

以下是几种常见的方法:1. 使用OLE DB连接:OLE DB是Microsoft提供的一种连接数据库的标准接口,可以连接各种类型的数据库。

可以通过VB中的ADO(ActiveX Data Objects)对象来使用OLE DB连接数据库。

以下是一个使用OLE DB连接数据库的示例代码:```Dim conn As New ADODB.Connectionconn.ConnectionString = "Provider=SQLOLEDB;DataSource=ServerName;Initial Catalog=DatabaseName;UserID=Username;Password=Password"conn.Open```上述代码中,通过设置ConnectionString属性来指定数据库连接字符串,其中包含了数据库类型、服务器名称、数据库名称、用户名和密码等信息。

然后调用Open方法打开数据库连接。

2. 使用ODBC连接:ODBC(Open Database Connectivity)也是一种标准的数据库连接接口,可以连接多种类型的数据库。

可以通过VB中的ODBC对象来使用ODBC连接数据库。

以下是一个使用ODBC连接数据库的示例代码:```Dim conn As New ADODB.Connectionconn.ConnectionString = "Driver={SQL Server Native Client 11.0};Server=ServerName;Database=DatabaseName;Uid=Username;Pwd=P assword;"conn.Open```上述代码中,通过设置ConnectionString属性来指定ODBC连接字符串,其中包含了ODBC驱动程序名称、服务器名称、数据库名称、用户名和密码等信息。

VB与数据库连接的几种方法

VB与数据库连接的几种方法

VB与数据库连接的几种方法在VB中,与数据库进行连接的方式有多种,可以根据不同的需求选择不同的方法。

下面将介绍几种常用的连接数据库的方法。

1.使用ADO连接数据库:ADO(ActiveX Data Objects)是一种用于连接数据库的COM组件,它提供了一套广泛的API,用于与各种数据库进行交互。

使用ADO连接数据库的基本步骤如下:(1)引入ADO组件:在VB的项目中,需要通过引入ADO组件来使用ADO的功能。

在“项目”菜单中选择“引用”,然后勾选“微软ActiveX数据对象库”即可。

(2)创建连接对象和命令对象:使用ADO连接到数据库需要创建两个核心对象,即连接对象和命令对象。

连接对象用于建立与数据库的连接,命令对象用于执行SQL语句。

(3)打开数据库连接:使用连接对象的Open方法来打开数据库连接。

(4)执行SQL语句:使用命令对象的Execute方法执行SQL语句,可以执行查询、插入、更新、删除等操作。

(5)关闭数据库连接:使用连接对象的Close方法关闭数据库连接。

2.使用ODBC连接数据库:ODBC(Open Database Connectivity)是一种通用的数据库访问接口,可以连接各种类型的数据库,包括Access、SQL Server、MySQL等。

VB提供了对ODBC的支持,可以使用ODBC连接数据库。

(1)设置ODBC数据源:在Windows的“控制面板”中选择“管理工具”->“ODBC数据源”,配置一个ODBC数据源,指定要连接的数据库。

(2)在VB中连接数据库:在VB中使用ODBC连接数据库需要通过ODBC数据源名来建立连接。

例如:```Dim conn As New ADODB.Connectionconn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\myDB.mdb;Uid=Admin;Pwd=; "conn.Open```(3)执行SQL语句:通过ADO连接对象执行SQL语句,与使用ADO 连接数据库的方式相同。

VB访问数据库方法介绍

VB访问数据库方法介绍

VB访问数据库方法介绍Visual Basic在Form窗口中加入DGrid控件,如不在此控件,可打开主菜单Tools/Custom,在列表中选择Apex Data BroundGrid复选框,确认后即可向工具箱中加入此控件。

在Form窗口中单击选中此控件(DGrid1),按下F4打开属性窗口,设置Datasource属性为Data1,在Form 窗口中用鼠标右键单击控件DGrid1,选择 Retrieve Fields;再用鼠标右键单击控件DGrid1,选择Edit,用鼠标调整控件及有关字段大小;再用鼠标右键单击控件DGrid1,选择Properties(属性),在弹出窗口中,选择Colums标签,在下拉列表中选Colum1,将Caption 属性改为“学号”,选择Colum2,Caption属性改为“姓名”,选择Colum3、4将Caption属性改为“性别”、“专业”,按下“确定”按钮。

再向Form窗口中加入一个按钮控件,将Caption属性设置为“退出”,双击该控件(Command1),在代码窗口中写入“END”,存盘。

此时,一个具备数据库读写、浏览功能的应用程序就建立了,按下F5运行,通过单击Data1的各按钮即可看出当前记录的变化情况。

在此基础上,我们还可以借助数据库控制控件的有关属性和方法进行更灵活的操作和控制。

1、设置Data1.Visiable=False’将控件设为不可见2、将按钮Command2,3,4,5,6,7的Caption属性分别设置为“追加”、“首记录”、“上一条”、“下一条”、“尾记录”、“删除”,双击各按钮,分别写入事件代码:Sub Command1-Click() ’关闭应用程序EndEnd SubSub Command2-Click() ’追加记录Data1.Recordset .AddnewData1.Recordset .UpdateData1.Recordset .MoveLastEnd SubSub Command3-Click() ’移向首记录Data1.Recordset .MoveFirstEnd SubSub Command4-Click() ’移向上一条记录Data1.Recordset .MovePreviusIf Data1.Recordset .Bof ThenData1.Recordset .MoveFirstEnd IfEnd SubSub Command3-Click() ’移向尾记录Data1.Recordset .MoveLastEnd SubSub Command4-Click() ’移向下一条记录Data1.Recordset .MoveNextIf Data1.Recordset .Eof ThenData1.Recordset .MoveLastEnd IfEnd Sub除此之外,数据库控制控件还有Bookmark、RecordCount等许多属性与方法,能对数据库进行各种方便的操作。

使用VB数据控件访问数据库

使用VB数据控件访问数据库

使用VB数据控件访问数据库Visual Basic是一种功能强大的编程语言,它允许程序员使用数据控件访问数据库。

在本文中,我们将介绍如何使用VB数据控件来连接和操作数据库。

首先,我们需要使用VB的数据控件来建立与数据库的连接。

VB提供了多种数据控件,包括ADO控件(ActiveX Data Objects,ActiveX数据对象)、DAO控件(Data Access Objects,数据访问对象)和ODBC控件(Open Database Connectivity,开放数据库连接)等。

在这里,我们将使用ADO控件。

要使用ADO控件,我们首先需要将其添加到项目中。

打开VB的开发环境,选择"工具"->"选项"->"控件"选项卡。

在这里,我们可以看到可用的控件列表。

找到ADO控件并勾选它,然后点击"应用"和"确定"。

在VB的表单上添加一个数据控件(如ADODC控件),这个控件将用于建立与数据库的连接。

在属性窗口中,我们可以设置连接字符串,选择需要连接的数据库,以及指定用户名和密码等。

可以使用连接字符串来指定连接的数据库类型和位置,如"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\mydatabase.mdb;User Id=admin;Password=;"一旦连接到数据库,我们就可以使用数据控件来执行各种数据库操作,如查询、插入、更新和删除等。

数据控件提供了一些方法和属性,可以轻松地执行这些操作。

此外,我们还可以使用数据控件的AddNew方法和Update方法来插入和更新数据库记录。

例如,我们可以使用Recordset.AddNew方法添加一条新的记录,然后使用Recordset.Update方法将更改保存到数据库中。

当我们完成对数据库的操作后,我们需要关闭数据库连接。

使用VB访问数据库

使用VB访问数据库
使用DAO的程序编码非常简单,DAO提供丰富 的游标(Cursor)类型的结果集和非游标 (Cursor Less)类型的结果集,同DDL(数 据描述语言)的功能很类似。
DAO模型是设计关系数据库系统结构的对象类的 集合。
➢它们提供了完成管理这样一个系统所需的全部操作的 属性和方法,包括创建数据库,定义表、字段和索引, 建立表间的关系,定位和查询数据库等工具。
OLE DB与ADO
OLE DB(Object Linking and Embedding for DataBase)数据库对象链接和嵌入
MS采用通用数据访问的方法,“你自己保存数 据,我们给你提供一种方法来访问这些数据。”
实际上就是一种进行关系型数据和非关系型数据 一样的技术。
OLE DB定义:
?使用daoodbcdirect功能可以实现远程rdo功能关系数据库sqlsever200oracleaccess等通过odbc应用程序使用rdo访问数据库daojetrdoodbcjet通知odbc访问服务器数据库数据库databaseodbc允许jet或rdo访问服务器数据库jet不能直接访问服务器accessjet可以直接访问access数据库缺点?dao与rdo只能处理后台为关系数据库的dbms不能解决通用数据存储及通用数据访问
Recordset对象
Recordset对象(记录集对象)
用来管理某个查询返回的记录集以及记录集中的 游标。
声明:对每一个需要操作的查询结构可以声 明一个Recordset对象
Dim cn As New ADODB. Recordset
Recordset属性
1、CursorType 属性 (游标类型)
ODBC允许JET或 RDO访问服务器数 据库

文献翻译-VB程序访问数据库的两种途径

文献翻译-VB程序访问数据库的两种途径

附录1 外文翻译VB程序访问数据库的两种途径VB是Microsoft公司开发的一种面向对象的编程语言。

虽然VB不是数据库管理系统软件,但由于他提供了功能强大的数据库访问支持,使用他可以快速开发出数据库应用系统。

由于他还具有简单易学、可视化编程等优点,得到了许多数据库开发者的青睐。

开发数据库应用系统必须遵循特定的数据库访问接口,从而建立数据库连接,打开数据库的数据表,访问数据记录等。

VB程序访问数据库有两种途径:(1)使用数据控件访问数据库VB 6内置了Jet数据库引擎提供的数据访问功能。

VB提供的"数据控件"封装了常用的访问数据库所需的属性、方法和事件,是快速开发数据库应用系统的得力助手。

数据控件提供了快速处理各种格式数据库的能力,开发者不必了解数据库的具体构造和复杂的编程接口就能方便有效地访问数据库中的数据,从而极大地降低了数据库应用系统的开发难度,加快了开发周期。

在使用数据控件访问数据库时,一般只需设置数据控件的某些属性就可以了。

使用数据控件的基本技巧如下:①设置数据控件的Data Name属性Data Name属性指定了数据控件要连接的数据库名称。

利用DataName属性,可以返回或设置数据控件的数据源的名称和位置。

数据库类型有DataName所指向的文件或目录指定。

②设置数据控件的Record Source属性Record Source属性指定了数据控件要连接的数据表名称,该数据表应是Data Name所指定的数据库中的某个数据表。

利用Record Source属性,可以指定数据控件所要连接的数据记录来源。

③设置数据感知控件的Data Source属性数据感知控件用来显示数据库中的数据,如文本框控件(TextBoxContr01)就是一个数据感知控件。

应将数据感知控件的Data Source属性设置为数据控件的名称。

这样一来,数据感知控件就可以显示数据库中的数据了。

④设置数据感知控件的Data Field属性Data Field属性指定了数据感知控件要显示的字段,该字段应是数据控件所指定的数据表中的字段。

vb与数据库的几种连接方法

vb与数据库的几种连接方法

-、用DAO控件连接数据库1.与Access2000数据库连接Private Sub Command1_Click()'也可直接在控件属性中设置以下各项但在控件属性中不能写入密码'只有在数据数没有密码的情况下可以省略Data1.RefreshData1.Connect = "Access 2000;"Data1.DatabaseName = App. Path + "/chncmadb.mdb"'数据库没有密码此句可省Data1.Connect = ";pwd=123456"'Data1.RecordSource = "耕地资源管理单元属性数据表2004"Data1.RecordSource = "select * from 耕地资源管理单元属性数据表2004" Data1.Refresh’move后才能正确显示记录个数End Sub2.与没有密码的DBF文件数据库连接Private Sub Command2_Click()Data1.Connect = "dBASE III;"Data1.DatabaseName = App. Path' Data1.RecordSource ="DBF"Data1.RecordSource = "select * from dbf"Data1.Refresh’move后才能正确显示记录个数End Sub3.与没有密码的Excel文件数据库连接Private Sub Command3_Click()Data1.Connect = "Excel 8.0;"Data1.DatabaseName = App.Path & "/EXcel.xls"Data1.RecordSource = "select * from [EXcel.xls]"Data1.Refresh’move后才能正确显示记录个End Sub二、用DAO代码连接数据库'在使用DAO对象前应选定Visual Basic菜单下的[工程]中的引用了菜单中的[Microsoft DAO 3.6 Object Library]选项,或其它版本1.DAO代码与Access数据库连接Private Sub Command1_Click()Dim Db As DatabaseDim Rs As Recordset'以共享、读写方式打开'如果无密码最后一个参数可以不要Set Db= OpenDatabase(App.Path & "/chncmadb.mdb", False, False, ";pwd=123456")'不需要move来更新记录个数'Set Rs = Db.OpenRecordset("耕地资源管理单元属性数据表2004")'需要move来更新记录个数Set Rs = Db.OpenRecordset("select * from [耕地资源管理单元属性数据表2004]")If Rs.RecordCount > 0 ThenRs.MoveLastRs.MoveFirstEnd IfEnd Sub2.DAO代码与没有密码的DBF文件数据库连接Private Sub Command2_Click()Dim Db As DatabaseDim Rs As Recordset'以共享、读写方式打开Set Db = OpenDatabase(App.Path, False, False, "dbase III;")'不需要move来更新记录个数'Set Rs = Db.OpenRecordset("DBF")’需要move来更新记录个数Set Rs = Db.OpenRecordset("select * from [DBF]")If Rs.RecordCount > 0 ThenRs.MoveLastRs.MoveFirstEnd IfEnd sub3. 'DAO代码与没有密码的Excel文件数据库连接Private Sub Command3_Click()Dim Db As DatabaseDim Rs As Recordset'以共享、读写方式打开'如果无密码最后一个参数可以不要Set Db = OpenDatabase(App.Path & "/EXcel.xls", False, False, "Excel 8.0;") '不需要move来更新记录个数' Set Rs = Db.OpenRecordset("EXcel.xls") '表格中的工作目录sheet'需要move来更新记录个数Set Rs = Db.OpenRecordset("select * from [EXcel.xls]") '表格中的工作目录sheet'If Rs.RecordCount > 0 ThenRs.MoveLastRs.MoveFirstEnd IfEnd Sub三、用ADO控件连接数据库'也可直接在控件属性中设置以下各项1.ADO控件与Access2000数据库连接Private Sub Command1_Click()'连接有密码的Access数据库'Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "/chncmadb1.mdb;Jet OLEDB:DataBase PASSWORD=123456"'连接没有密码的Access数据库Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "/chncmadb.mdb;Persist Security Info=False"'Adodc1.RecordSource = "[耕地资源管理单元属性数据表2004]"Adodc1.RecordSource = "select * from [耕地资源管理单元属性数据表2004]"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub2.'ADO控件与DBF表连接Private Sub Command2_Click()'Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=dBASE Files;DBQ=" & App.Path & ";SourceType=DBF;"'Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;ExtendedProperties=DSN=Visual FoxPro Tables;UID=;SourceDB=”& app.path&”;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;"'Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;ExtendedProperties=DSN=dBASE Files;DBQ=”& app.path &”;;DefaultDir=”& app.path&”;DriverId=533;MaxBufferSize=2048;PageTimeout=5;"'能使表名长度不受限制Adodc1.ConnectionString = "Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceDB=" & App.Path & ";SourceType=DBF;Locale Identifier=2052"'Adodc1.RecordSource = "[DBF1]"Adodc1.RecordSource = "select * from DBF1"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub3.'ADO控件与Excel表连接Private Sub Command3_Click()'下面一句测试未能通过'Adodc1.ConnectionString = "Data Provider=MSDASQL.1;driver=Microsoft Excel Driver *.xls);DBQ=" & App.Path & "/EXcel.xls"'Adodc1.ConnectionString="Provider=MSDASQL.1;Persist Security Info=False;ExtendedProperties=DSN=Excel Files;DBQ=" & App.Path & "/EXcel.xls;DefaultDir=”&app.path&”;DriverId=790;MaxBufferSize=2048;PageTimeout=5;"Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "/EXcel.xls;Extended Properties='Excel 8.0;HDR=Yes'"'Adodc1.RecordSource = "[EXcel.xls]"Adodc1.RecordSource = "select * from [EXcel.xls]"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub4.'ADO控件与Oracle数据库连接Private Sub Command4_Click()'Adodc1.ConnectionString = "Provider=MSDAORA.1;Password=chncmadb;User ID=chncmadb;Data Source=towebserver;Persist Security Info=True"Adodc1.ConnectionString="Provider=OraOLEDB.Oracle.1;Password=chncmadb;Persist Security Info=True;User ID=chncmadb;Data Source=towebserver"'Adodc1.RecordSource = "T320481TR012004"'表名不能加方括号Adodc1.RecordSource = "select * from T320481TR012004"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub5.'ADO控件与SQLserver数据库连接'未测试Private Sub Command5_Click()Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Password=111;Persist Security Info=True;User ID=111;Initial Catalog=111;Data Source=111"'Adodc1.RecordSource = "T320481TR012004"Adodc1.RecordSource = "select * from T320481TR012004"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub四、用ADO代码连接数据库'在使用ADO对象前应选定Visual Basic菜单下的[工程]中的引用了菜单中的[Microsoft.ActiveX Data Object 2.5 Library]选项,或其它版本1.'ADO代码与Access2000数据库连接Private Sub Command1_Click()Dim AdoCnn As ADODB.ConnectionDim AdoRs As ADODB.RecordsetSet AdoCnn = New ADODB.ConnectionSet AdoRs = New ADODB.RecordsetAdoCnn.CursorLocation = adUseClient'.open后面的字符串可以参考ADO控件连接.ConnectionString后面的的字符串AdoCnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "/chncmadb1.mdb;Jet OLEDB:DataBase PASSWORD=123456"AdoRs.Open "select * from [耕地资源管理单元属性数据表2004]", AdoCnn, adOpenDynamic, adLockPessimistic, adCmdTextSet DataGrid1.DataSource = AdoRsSet AdoRs = NothingSet AdoCnn = NothingEnd Sub2.'ADO代码与DBF表连接Private Sub Command2_Click()Dim AdoCnn As ADODB.ConnectionDim AdoRs As ADODB.RecordsetSet AdoCnn = New ADODB.ConnectionSet AdoRs = New ADODB.RecordsetAdoCnn.CursorLocation = adUseClient'.open后面的字符串可以参考ADO控件连接.ConnectionString后面的的字符串AdoCnn.Open "Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceDB=" & App.Path & ";SourceType=DBF;Locale Identifier=2052"AdoRs.Open "select * from [DBF1]", AdoCnn, adOpenDynamic, adLockPessimistic, adCmdTextSet DataGrid1.DataSource = AdoRsSet AdoRs = NothingSet AdoCnn = NothingEnd Sub3.'ADO代码与Excel表连接Private Sub Command3_Click()Dim AdoCnn As ADODB.ConnectionDim AdoRs As ADODB.RecordsetSet AdoCnn = New ADODB.ConnectionSet AdoRs = New ADODB.RecordsetAdoCnn.CursorLocation = adUseClient'.open后面的字符串可以参考ADO控件连接.ConnectionString后面的的字符串AdoCnn.Open"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" &App.Path & "/EXcel.xls;Extended Properties='Excel 8.0;HDR=Yes'"AdoRs.Open "select * from [EXcel.xls]", AdoCnn, adOpenDynamic, adLockPessimistic, adCmdTextSet DataGrid1.DataSource = AdoRsSet AdoRs = NothingSet AdoCnn = NothingEnd Sub4.'ADO代码与Oracle数据库连接Private Sub Command4_Click()Dim AdoCnn As ADODB.ConnectionDim AdoRs As ADODB.RecordsetSet AdoCnn = New ADODB.ConnectionSet AdoRs = New ADODB.RecordsetAdoCnn.CursorLocation = adUseClient'.open后面的字符串可以参考ADO控件连接.ConnectionString后面的的字符串AdoCnn.Open "Provider=OraOLEDB.Oracle.1;Password=chncmadb;Persist Security Info=True;User ID=chncmadb;Data Source=towebserver"AdoRs.Open "select * from T320481TR012004", AdoCnn, adOpenDynamic, adLockPessimistic, adCmdTextSet DataGrid1.DataSource = AdoRsSet AdoRs = NothingSet AdoCnn = NothingEnd Sub5.'ADO代码与SQLserver数据库连接'未测试Private Sub Command5_Click()Dim AdoCnn As ADODB.ConnectionDim AdoRs As ADODB.RecordsetSet AdoCnn = New ADODB.ConnectionSet AdoRs = New ADODB.RecordsetAdoCnn.CursorLocation = adUseClient'.open后面的字符串可以参考ADO控件连接.ConnectionString后面的的字符串AdoCnn.Open "Provider=SQLOLEDB.1;Password=111;Persist Security Info=True;User ID=111;Initial Catalog=111;Data Source=111"AdoRs.Open "select * from T320481TR012004", AdoCnn, adOpenDynamic, adLockPessimistic, adCmdTextSet DataGrid1.DataSource = AdoRsSet AdoRs = NothingSet AdoCnn = NothingEnd Sub。

VB与数据库连接的几种方法

VB与数据库连接的几种方法

[教案](十四)数据库技术授课方式:讲授法授课学时:6学时教学目的:通过本次课的学习,学生应该掌握VB与数据库连接的几种方法,并能够熟练掌握应用Data控件访问数据库。

教学重点和难点:1.VB访问数据库的方法;2.Data控件的应用。

教学过程:一、数据库的基本概念介绍有关在用VB开发数据库的几个基本概念--数据库、表、字段、和记录。

二、VB访问数据库技术VB提供了两类访问数据的方式:数据控件和DAO,而我们最常用的是数据控件。

在数据控件中有两个控件:DATA控件和ADO DATA控件;此外,VB还可以通过ODBC数据源同后台数据库连接。

在这里要介绍这几种数据库技术的最佳适用环境以及他们之间的区别。

三、记录集Recordset1.介绍什么是Recordset记录集,以及它的特点和用它的好处。

2.属性介绍记录集的5个常用属性:(1)AbsolutePosition(2)BOF(3)EOF(4)NoMatch(5)Bookmark。

3.方法介绍常用的三种方法:--Move方法、Find方法和Seek方法,并掌握两种查找方法Find方法和Seek方法的区别。

四、Data控件1.常用属性介绍Data控件的6个常用属性:(1)Connec(2)DatabaseName(3)RecordSource(4)RecordType(5)EOFAction(6)BOFAction2.事件--Reposition 事件和Validate 事件 (1)两个事件的实际应用情况 (2)两个事件的触发条件3.方法--Refresh 方法和UpdateControls 方法 (1)方法的应用环境 (2)方法使用的语法格式五、 数据库记录的增加、删除和修改操作需要用到的方法有AddNew, Delete, Edit, Update 和Refresh 方法。

(1)以上几种方法使用时调用的语法格式 (2)三种操作的算法学生作业:上机实验十、十一:Data 控件的使用;ADO 的使用。

vb访问数据库

vb访问数据库

湖南科技学院实验报告系部数学与计算科学专业信息与计算科学成绩评定班级学号姓名课程名称数据库原理与应用实验时间2012/12/17实验编号实验7 实验名称VB、Dephi访问数据库实验环境Windowsxp;软件:Oracle 11g。

实验目的1. 初步掌握如果设置ODBC数据源和用OLEDB方式链接数据库。

2. 能写出较简单的程序,来查询、插入和修改数据库中的数据。

实验内容1. 设置ODBC数据源。

2.在VB中新建一个窗体,向窗体中添加一个ADODC控件,设置ADODC的属性连接Oracle数据源。

3.再添加一个DataGrid控件,将其于ADODC控件绑定,实现简单的数据库查询应用。

4.联合使用数据控件ADODC、DataGrid、TextBox控件显示数据库中一个或多个表中的数据,并可以对记录进行编辑。

(①算法、程序、步骤和方法②输入、输出、实验结果③实验结果分析)1. 设置ODBC数据源。

答:(1)控制面板—>管理工具—>数据源ODBC,就出现如下窗口:(2)选择“系统DSN”选项,点单“添加”,再出现如下窗口,选择Oracle in OraHme90点击完成。

(3)完成上面的操作,就会出现如下窗口并填入相应的数据。

(4)在上面的窗口中,数据填完了,就点击Test Connection,就出现如下的测试窗口,并填入数据,点击OK进行测试:(5)出现了如下的窗口就测试成功了。

最后的依次点击“确定”与OK 。

这就完成了ODBC数据源的设置。

2.在VB中新建一个窗体,向窗体中添加一个ADODC控件,设置ADODC的属性连接Oracle 数据源。

答:(1)启动VB,建立新的工程。

在VB主界面的【菜单栏】选择【工程】/【部件】选项。

出现如下的窗口,选择如图中的选项,点击“确定”。

(2)在工具箱中会出现如矩形圈中的的控件图标(3)点击如的圈中的控件,再在窗体设计器中按住鼠标左键拖动一个合适的大小的矩形区域然后放开鼠标,就会出现如下图的ADODC控件的创建。

使用VB数据控件访问数据库

使用VB数据控件访问数据库
mmand5)
(3)程序代码
Private Sub Command1_Click() s = Trim(InputBox("请输入要查找的学号", "查找")) t = "学号='" & s & "'" Data1.Recordset.FindFirst t If Data1.Recordset.NoMatch Then MsgBox "找不到学号为" & s & "的学生 ! " Data1.Recordset.MoveFirst End If
10.11 使用VB数据控件访问数据库
VB提供了多种访问数据库的方式,其中数据控件(Data) 是一种使用简便、处理快速的标准控件
1.数据控件的用途
利用Data控件可以建立应用程序与数据库的联系,操作数 据库中的数据,还能利用文本框、列表框等控件,实现数据 的浏览、编辑等功能。
2.
与添加其他控件的方法一样,其外观如下:
Excel数据清单(C:\My Documents\成绩单.xls)内容如下:
(1)创建应用程序的用户界面
(2)设置对象属性
设置数据控件Data1: Connect属性为Excel8.0 DataBaseName属性为C:\My Documents\成绩单.xls RecordSource属性为Sheet1$ (工作表名)
设置文本框(Text1-Text4): 对应“成绩库.dbf”的4个字段 DataSource属性为Data1 DataField属性分别为“学号”、“姓名”、“成绩”和
“班号”
设置五个命令按钮(Command1-Command5)

VB数据库的链接与访问

VB数据库的链接与访问

VB数据库的链接与访问本节详细介绍了数据库的ADO(ActiveX数据对象)控件链接与访问方式、DAO(数据访问对象)对象模型分层结构链接与访问方式、通过数据环境设计器的链接与访问方式、使用ADODB对象的链接与访问方式。

7.3.1使用ADO控件建立数据库链接和数据访问使用ADO data控件,可以快速简便地建立数据库链接,配合数据绑定控件,进行数据快速浏览,这是目前最常用的方法之一,同时介绍了数据记录集Recordset方法的使用。

1.ADO data控件ADO data是一个ActiveX控件,需要从菜单栏选择“工程”/“部件”,在“控件”选项卡中选择“Microsoft ADO Data Control 6.0(OLE DB)”,单击“确定”按钮,才会在工具箱中出现Adodc控件图标,如图7-5a所示。

将该控件加入窗体,它是一个具有四个箭头按钮的图形控件,如图7-5b所示。

建立Adodc控件与数据库的链接按如下操作步骤:1)进入Adodc属性定义:在Adodc控件上单击鼠标右键,选择“Adodc属性”菜单;或者在图7-6a“属性”窗口里选择“自定义”项,进入“属性页”,如图7-6b所示。

2)“通用”选项卡中,选择“使用连接字符串”选项,再单击“生成”按钮,出现“数3)选择Microsoft Jet 3.51 OLE DB Provider,再单击“下一步”按钮,出现“连接”选项卡,单击浏览钮,选择合适路径下的数据库Student.mdb,如图7-8所示。

再单击“测试连接”按钮,出现“测试连接成功”信息。

最后,单击“确定”按钮,返回图7-6所示的“属性页”,在“使用连接字符串”下已经表明数据库与Adodc 控件连接成功。

4)选择“记录源”选项卡,如图7-9所示。

在“命令类型”下拉框中选择“2-adCmdTable”选项,在“表和存储过程名称”下拉框中选择数据表StudentBase;或在“命令类型”下拉框中选择“1-adCmdText”选项,在“命令文本(SQL)”处输入SQL命令(比如,select * from StudentBase),获取数据表子集。

VB访问数据库的方法与原则.net-电脑资料

VB访问数据库的方法与原则.net-电脑资料

VB访问数据库的方法与原则.net-电脑资料一、VB访问数据库的原则总则:具体问题具体分析,根据具体的环境、条件、要求而采用适当的方案*代码的重用和运行的效率例如:通过使用ODBC数据源连接数据库的方法,可在变换多种数据库类型的情况下,而不用频繁修改代码,。

用VBSQL通过DB-Library 就做不到一、VB访问数据库的原则总则:具体问题具体分析,根据具体的环境、条件、要求而采用适当的方案*代码的重用和运行的效率例如:通过使用ODBC数据源连接数据库的方法,可在变换多种数据库类型的情况下,而不用频繁修改代码。

用VBSQL通过DB-Library就做不到。

而ODBC接口并不是VB访问数据库运行效率最高的方法。

同样,同是使用ODBC接口的ADO的效率要高于RDO *实现的简便性,易维护性如果一种方法实现起来很复杂,工程的开发必然造成人力物力的浪费,同时这样设计出来的应用程序只会支持起来更复杂或维护时更困难。

例如:本地需要访问ISAM或Jet类型数据源,那么就使用DAO/Jet,而没有必要使用通过ODBC的方法。

RDC实现起来要较RDO更容易*安全性原则报这一条应根据环境和条件决定。

例如局域网的网络安全性要好于广域网因而可直接利用数据控件如DC,这样实现起来方便快捷,而广域网需要大量的错误捕获,如用RDC就不如用RDO易控制错误。

二、VB访问数据库的方法VB访问数据库的方法很多,一般情况下分成两大类,而每一类又有很多方法。

数据访问接口功能及含义:ADC:高级数据连接器(AdvancedDataConnector):提供绑定ADO数据源到窗体的数据绑定控件上。

ADC主要是一种直接访问或者通过ADO访问远程OLEDB对象的一种技术,它也支持主要应用在微软IE浏览器上的数据绑定控件。

它是特地为Web上的浏览器为基础的应用程序而设计的。

ADO:Active数据对象(ActiveDataObjects):ADO实际是一种提供访问各种数据类型的连接机制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

树叶
树根
树干
某一个苹果树
苹果
在下面的界面中有几个对象?
数据库访问技术
1. JET与DAO 2. ODBC与RDO 3. OLE DB与ADO
JET与DAO
JET(Joint Engine Technology)数据连接引擎技 术:
1991年末或92年初,MS发布了ACCESS作为其Windows 桌面数据库,ACCESS使用了JET数据库引擎。
OLE DB与ADO
OLE DB(Object Linking and Embedding for DataBase)数据库对象链接和嵌入
MS采用通用数据访问的方法,“你自己保存数 据,我们给你提供一种方法来访问这些数据。”
实际上就是一种进行关系型数据和非关系型数据 一样的技术。
OLE DB定义:
Connection方法
2 、 Close方法:
关闭1个数据连接对象,使该连接对象只留在本 机内存中,可对其属性更改后再重新建立连接。
注意:如果不是关闭对象,而是将对象从内 存中清除,应使用 Set connection对象变量 =Nothing.
Set cn = Nothing
Connection方法
DAO可以打开DataBase的连接、访问或创建表, 对表执行SQL语句
应用程序 使用DAO访问数据库
通过JET
ACCESS 数据库
(*.mdb)
数据访问对象(Data Access Objects):是一 种面向对象的界面接口。
通过DAO/Jet功能可以访问ISAM(顺序索引查 找方法)数据库。
➢例如:完成如下的数据库操作,打开一个DataBase 并修改一个Table
✓ 使用DAO需要写5行代码 ✓ 使用ODBC API函数大概需要30行代码
➢因此提出了RDO
RDO(Remot Data Object)远程数据对象
是建立在ODBC 之上的对象模型,提供如同 DAO一样的易用性,同时又拥有几乎和ODBC API一样的速度。
定义
➢一种数据访问接口,可与符合 OLE DB 的数据源通信, 以连接、检索、操作和更新数据。
优点:
➢与DAO和RDO相比,模型非常小 ➢不是层次式结构,每个主要对象都可以独立创建。
什么是层次式结构?
Excel中把一个数放进一个单元格,不能仅创 建单元格,需要创建一个工作表,工作表需 要一个工作簿,工作簿又在Excel程序中,因 此存储一个数据,必须先创建一个Excel对象, 再访问。
ODBC允许JET或 RDO访问服务器数 据库
数据库 (DataBase)
OLE DB可以使用 ODBC或自身提供 的方法访问数据库
ADO 对象的组成
七个对象: Connection,
Command, Parameter,
Recordset,
Field, Property, Error.
➢MS提供一种对各类应用程序均适用的,采用ODBC接 口,通过结构化查询语言SQL对数据库进行访问操作 的总体解决方案。
设计目的:
➢为了给多种多样的应用程序提供优化功能
OLE DB与ADO
ADO(ActiveX Data Object) ActiveX 数据 对象
OLE DB和ODBC一样是一种底层的API,其上层 对象模型是ADO。ADO几乎兼容所用的数据库系 统。
使用VB访问SQL Sever数据库
属性 (名词)
体积
重量
颜色
某一个苹果
对象
将具有相同数据特征和行为特 征的所有的对象称为一个对象类
(苹果类)
类是型的概念,对象是值的概念
1. 体积变大 2. 重量变重 3. 颜色变红
生长
方法(主 动动词)
摘 事件(被 动动词)
1. 警铃响了
某一个对象的属性可以是数值型、字 符型、也可以是另一个对象
建立与数据源的物理连接。
格式: connection.Open [ConnectionString, UserID, Password, Options]
注意:该方法是使Connection获得初始化的方 法,只有使用了该方法,Connection对象才真正 在内存中存在。
后面的参数都是可选参数,最简单如:cn.Open 但如果这样则需要预先设置好ConnectionString 等参数。
Recordset对象
Recordset对象(记录集对象)
用来管理某个查询返回的记录集以及记录集中的 游标。
声明:对每一个需要操作的查询结构可以声 明一个Recordset对象
Dim cn As New ADODB. Recordset
Recordset属性
1、CursorType 属性 (游标类型)
使用DAO/ODBC Direct功能可以实现远程RDO 功能
应用程序 使用RDO访问数据库
通过ODBC
关系数据库
(SQL Sever200、 Oracle、
Access等)
DAO JET
RDO ODBC
JET可以直接访问 ACCESS数据库
ACCESS
JET通知ODBC 访问服务器数据库
JET不能直接访问服务器
与数据源的连接,每个项之间用分号隔开。 对于连接字符串的写法,精确固定的语法是没有的。因
为不同类型数据库,有各自的设置项。 例如:指定1个OLE DB连接,连接字符串可写为:
➢ cn.ConnectionString = "Provider=SQLOLEDB.1;
Password=sa; Persist Security Info=True; User ID=sa; Initial
3 、 Execute方法:
执行1个SQL查询,既可是选择查询,也可是动 作查询。
如: Set rst = cn.Execute(“ select * From student where Sname like ‘张%’ “)
但要注意:使用Connection对象的Execute方 法返回的游标类型是最基本的只能读和只能向前 移动的游标adOpenForwardOnly,因此,如果 该方法执行一个选择查询返回一个记录集时特别 要明白。
➢此类型的游标功能强大同时也是耗费系统资源最多的游 标。
AdOpenStatic:静态游标。
➢可以用来查找数据或生成报告的记录集合的静态副本。 另外,对其他用户所作的添加、更改或删除不可见。
AdOpenForwardOnly: 仅向前游标,默认值。
➢除了只能在记录中向前滚动外,与静态游标相同。 ➢当只需要在记录集中单向移动时,使用它可提高性能。 ➢顾名思义,这种游标只能向前移动。
AdOpenKeyset: 键集游标。
➢从你自己的记录集不能访问其他用户删除的记录,无 法查看其他用户添加的记录,但仍然可以看见其他用 户更改的数据。
ODBC与RDO
ODBC(Open Database Connectivity)开 放数据库互连
MS意识到许多人都拥有后端的数据库,如 Oracle、DB2等,因此发布JET的同时也推出了 一个数据访问层。
ODBC:
➢是MS建议并开发的数据库API标准,为异种数据库提 供了统一的访问接口,屏蔽了不同DBMS的差异,使 数据库应用系统不仅仅局限于某个DBMS。
四个集合:
Fields, Properties, Parameters, Errors.
Connection对象
Connection对象(连接对象):
是ADO的首要对象,它建立与数据源的连接、管 理程序对数据的一切操作。
对数据源的任何操作都需要建立一个 Connection对象,因此Connection对象是ADO 的基础。
➢KeySet游标允许你看见自它创建起其他用户所做的修 改,然而你却不能看到其他用户增加或删除的记录。
AdOpenDynamic :动态游标。
➢Dynamic游标可以看到他们保存记录集合的所有变化。 ➢使用Dynamic游标的用户可以看到其他用户所做的编
辑、增加、删除。
➢如果数据提供者允许这种类型的游标,那么它是通过每 隔一段时间从数据源重取数据来支持这种可视性的。毫 无疑问这会需要很多的资源。
ODBC允许JET或 RDO访问服务器数 据库
数据库 (DataBase)
缺点
DAO与RDO只能处理后台为关系数据库的DBMS, 不能解决通用数据存储及通用数据访问。
例如:一个Email系统需要存储多媒体文件以及其 他数据,比方说将一个Excel表格存储于该系统之 中, DAO与RDO都不能访问。
使用DAO的程序编码非常简单,DAO提供丰富 的游标(Cursor)类型的结果集和非游标 (Cursor Less)类型的结果集,同DDL(数 据描述语言)的功能很类似。
DAO模型是设计关系数据库系统结构的对象类的 集合。
➢它们提供了完成管理这样一个系统所需的全部操作的 属性和方法,包括创建数据库,定义表、字段和索引, 建立表间的关系,定位和查询数据库等工具。
Microsoft Jet 数据库引擎(Microsoft Jet Database Engine )
➢ 一个数据库管理系统,它在用户及系统数据库中检索和存储数据。 Microsoft Jet 数据库引擎可以被视为数据管理器组件,通过它可 构建其他数据访问系统(例如,Microsoft Access 和 Microsoft Visual Basic)。
主要功能:
Connection对象提供与包含路径,口令和连接 选项的数据源的链接;
声明:通常声明为全局变量
Dim cn As New ADODB.Connection
相关文档
最新文档