As ADODB.< 类名 >其中类名有: Connection 、 Command 、 RecordSet 与 Parameter 。
3. 对 ADO 对象的引用
在 Visual Basic 中必须先添加对 ADO 对象的引用,此后才能使用 ADO 对象实现对数据库的操作。
引用 ADO 对象 (观看视频)
对数据表的操作可分为两类:
( 1 )对数据表中记录的查询与编辑,这可以使用记录集对象( Recordset )以表或 Select 语句方式打开数据表,然后进行记录的查询与编辑。
( 2 )用 SQL 语句对数据表进行插入( Insert )、替换 (Update) 、删除 (Delete) 等操作,此时,应用命令对象( Command )实现上述操作。
在两类操作之前必须先打开数据库,即首先应用连接对象打开数据库,然后才能用记录集对象或命令对象对数据表进行操作。
用连接对象打开数据库
连接对象是用 Connection 类定义的对象,因此,在使用连接对象打开数据库之前,必须先定义连接对象,然后才能用连接对象建立与数据库的连接。
一、定义连接对象
Connection 类定义的对象定义连接对象有两种格式。
1 .定义格式 1
Dim < 连接对象 > As ADODB.Connection ‘ 定义连接对象
Set < 连接对象 > =New Conection ‘ 为连接对象动态分配内存空间
2 .定义格式 2
Dim < 连接对象 > As New ADODB.Connection ‘ 定义连接对象,并分配内存
二、连接对象的属性和方法
1 . ConnectionString 属性
ConnectionString 属性是一个连接数据库的字符串,用于提供数据库驱动程序、路径、数据库名、用户名、口令与安全等连接信息。 ConnectionString 属性设置格式如下:
< 连接对象 >. ConnectionString =\" Provider =< 数据库驱动程序 >; Data Sorce =< 路径 >\\< 数据库 >;[ User ID =< 用户名 >];[ Password =< 口令 >];[ Security Info =false]\"
2 . CommandTimeout 属性
CommandTimeout 属性用于连接数据库时间,属性赋值格式如下: < 连接对象 >.CommandTimeout= 连接时间
3 . Open 方法
Open 方法用于打开数据库,其调用格式如下:
< 连接对象 >.Open [ConnectionString],[User ID],[Password] 说明:若连接对象的 ConnectionString 属性已赋值,则 [ConnectionString],[User ID],[Password] 可省略。
4 . Close 方法
Close 方法用于关闭数据库,其调用格式如下: < 连接对象 >.Close
【 例 1 】用 ADO连接对象打开 E:\\vb\\data 目录中的 Access 类型数据库 xsda..mdb ,限时 15 秒。
方法一:先给 ConnectionString 属性赋值,后用 Open 方法打开数据库。 Dim Con As New ADODB.Connection
Con.ConnectionString = \"Provider=Microsoft.Jet.OLEDB.4.0;\" & _ \"Data Source=E:\\vb\\data\\xsda_old.mdb\" Con. CommandTimeout=15 Con.Open Con.Close
方法二:直接用 Open 方法打开数据库。 Dim Con As New ADODB.Connection
Con.Open \"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\\vb\\data\\xsda_old.mdb\" Con. CommandTimeout=15 Con.Open Con.Close
用连接对象(如 Con )与数据库连接后,便可使用记录集对象与命令对象对数据表进行操作。 用记录集对象操作数据表
用记录集对象操作数据表的步骤是,首先用 RecordSet 类定义记录集对象,然后用记录集对象的 Open 方法打开数据表,此后,可用 Field 属性可表示记录中的某个字段,用 Addnew 、 Delete 、 Update 方法可添加、删除、修改记录。完成对数据表的操作。
一、 定义记录集对象
记录集对象的定义格式为: Dim < 记录集对象 > As New ADODB.Recordset
二、 记录集对象的方法
1 .记录集对象的 Open 方法
记录集对象的 Open 方法用于打开数据表,其调用格式如下:
< 记录集对象 >.Open [Source] [ActiveConnection],[Coursortype],[LockType],[Option]
各参数含义如下:
① Source :数据表或 Select 语句,用于选择指定的数据表。
② ActiveConnection :连接对象,用于连接数据表所在的数据库。 ③ CursorType :游标类型 ④ LockType :记录加锁 ⑤ Option :选项
2 .记录集对象的增、删、改方法 ? Addnew 方法:添加记录; ? Delete 方法: 删除记录;
? Update 方法:修改记录。
3 .记录集对象的指针移动方法
? MoveFirst 方法: 将记录指针移到首条记录; ? MovePrevious 方法:将记录指针上移一条记录; ? MoveNext 方法: 将记录指针下移一条记录; ? MoveLast 方法: 将记录指针移到最后一条记录;
? Move n 方法: 将记录指针移动 n 条记录,当 n>0 向下移,当 n<0 向上移。
4 .记录集对象的关闭方法 Close
当记录集对象使用完毕后,应用 Close 方法关闭记录集对象,回收为记录集对象分配的内存空间。
三、 字段对象 Fields
1 .字段表示方法
字段对象 Fields 用于表示记录集对象中的某个字段。第 i 个字段有三种表示方法: < 记录集对象 >.Fields ( i )
< 记录集对象 >.Fields(“ 字段名 ”) < 记录集对象 > !字段名
【 例 1 】 已用记录集对象 Rs 的 Open 方法打开了系部编码表 TB06 ,则 TB06 中的第 1 个字段 TB0602 如何表示。
可以用三种方法表示: Rs.Fields(1) 、 Rs.Fields(“TB0602”) 、 Rs!TB0602
2 . Fields 的属性
Value 属性:用于表示 Fileds 字段值,; Name 属性:用于表示 Fileds 字段名; Type 属性:用于表示 Fields 字段类型。
【 例 2 】在学生档案查询程序中,用两个列表框控件 Combo_TB06 、 Combo_TB03 替换 DataCombo_TB06 与 DataCombo_TB03 控件。用两个记录集对象打开系部编码表 TB06 与班级编码表 TB03 ,然后将 TB06 与 TB03 中记录赋给 Combo_TB06 、 Combo_TB03 列表框控件,实现由系查询班级记录的功能。
分析步骤:
( 1 )定义连接对象 Con ,打开数据库 xsda.mdb ; ( 2 )定义两个记录集对象 Rs_TB06 、 Rs_TB03 ,用 Rs_TB06 打开 TB06 ,用 Rs_TB03
打开 TB03 ;
( 3 )用 Rs_TB06 的字段对象将 TB06 中记录逐个赋给 Combo_TB06 ;
( 4 )用 Rs_TB03 字段对象将选中的系部中的班级记录逐个赋给 Combo_TB03 。
用命令对象操作数据表
用命令对象操作数据表的步骤是,首先用 Command 类定义命令对象,然后用命令对象的 ActiveConnection 属性选择连接对象(使命令对象与数据库连接),用 CommandType 属性选择命令类型,用 CommandText 属性输入 SQL 命令或选择数据表,最后用 Execute 方法执行 SQL 命令或完成与数据表的连接。
一、 定义命令对象
命令对象的定义格式为: Dim < 命令对象 > As New ADODB.Command
二、 命令对象的属性
1. ActiveConnection 属性:用于选择连接对象,使命令对象与数据库连接。 2. CommandType 属性:用于确定命令类型。 如: adCmdTable (选择数据表)、 adCmdText( 选择 SQL 语句 ) 等。 3 . CommandText 属性:根据命令类型存放“数据表名”、“ SQL 语句”、“存储过程名”、“文件名”等内容。
4 . CommandTimeout 属性:用于命令执行时间。
三、 命令对象的方法
Execute 方法:用于执行命令,相当于 Adodc 控件的 Refresh 方法
【 例 1 】 用 ADO 的三个对象完成下列工作:用连接对象打开数据库 xsda.mdb ;用记录集对象打开系部编码表( TB06 );用命令对象执行“删除系部编码为 '70' 的系部信息”的命令。
程序编写步骤:
( 1 )定义 ADO 的三个对象
Dim Con As New ADODB.Connection Dim Cmd As New ADODB.Command Dim Rs As New ADODB.Recordset
( 2 )配置 Connection 对象的连接属性并打开连接
Con.ConnectionString = \"Provider=Microsoft.Jet.OLEDB.4.0;\" & _ \"Data Source=E:\\vb\\data\\xsda_old.mdb\"
Con.Open
( 3 )打开 RecordSet 对象
Rs.Open \"Select * From TB06\
( 4 )配置 Command 对象的连接属性和命令语句,最后执行 Cmd.ActiveConnection = Con Cmd.CommandType = adCmdText
Cmd.CommandText = \"Delete From TB06 Where TB0601='70'\" Cmd.Execute