VB数据库编程实用源码
- 格式:doc
- 大小:45.50 KB
- 文档页数:6
使用ADO编程模型需添加ADO对象类库的“引用”----“Microsoft ActiveX Data Objects 2.x Library”
ADO之VB数据库操作主要包括读、写、修改及删除等操作,不论是进行什么数据库操作都必须首先连接到数据库。
一、连接到数据库
1、连接到SQL数据库:
通过ADO的Connection对象可实现VB与SQL数据库的连接。一般方法如下:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.ConnectionString = "Provider=SQLOLEDB.1;Password=密码;User ID=用户名;Initial Catalog=SQL数据库文件;Data Source= localhost;" '指定提供者,设置数据源
cnn.Open …打开到数据库的连接
……..
cnn.Close …关闭到数据库的连接
或者:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.Open "Provider=SQLOLEDB.1;Password=密码;User ID=用户名;Initial Catalog=SQL数据库文件;Data Source= localhost;" …打开到数据库的连接
……..
cnn.Close …关闭到数据库的连接
2、连接到ACCESS数据库:
通过ADO的Connection对象可实现VB与ACCESS数据库的连接。一般方法如下:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS数据库文件.MDB" '指定提供者,设置数据源
cnn.Open …打开到数据库的连接
……..
cnn.Close …关闭到数据库的连接
或者:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS数据库文
件.MDB" …打开到数据库的连接
……..
cnn.Close …关闭到数据库的连接
二、读数据库操作
读数据库操作一般可通过recordset对象实现。方法如下—以ACCESS数据库为例:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS数据库文
件.MDB" …打开到数据库的连接
Dim rs As New Recordset '声明一个记录集对象
rs.Open [记录源, cnn, 游标类型, 锁定类型, 命令类型] …也可先设置记录集相关属性
text1.text= rs("字段名称1或索引") …假设读取出来的字段信息显示在文本框中,三种读取方法等价
text2.text=rs.fields("字段名称2或索引")
text3.text= rs!字段名称3
…….
rs.close …关闭记录集对象
cnn.Close …关闭与数据库的连接
set rs=Nothing …释放rs对象实例
set cnn=Nothing …释放Connection对象实例
l 记录源一般为一条SQL查询语句,以实现查询目的。
l Recordset对象还保持查询返回的记录的位置,它返回第一个检索到的记录,并允许你一次一项逐步扫描其他结果。Recordset对象的部分属性及方法如下
Rs(i):读取第i个字段的数据,i从0开始
Rs(字段名):读取指定字段的数据
Rs.EOF:记录指针指到记录的尾部
Rs.BOF:记录指针指到记录的头部
Rs.RecordCount:游标中的数据记录总数
Rs.PageSize:当对象设有分页时,用于指定逻辑页中的记录个数
Rs.PageCount:返回记录集中的逻辑分页数
Rs.MoveNext:将记录指针移到下一个记录
Rs.MovePrev:将记录指针移到上一个记录
Rs.MoveFirst:将记录指针移到第一个记录
Rs.MoveLast:将记录指针移到最后一个记录
rs.Delete:将当前记录删除
rs.addnew:添加一条新记录(行)
l 如果要读取满足条件的数据库记录,只要在SELECT语句中增加WHERE子句即可(例如:WHERE 性别=”男”),如果要读取多条满足条件的数据库记录,可通过循环语句来实现,并且每读取一条记录后使用Rs.MoveNext移动记录指针以读取下一条记录。
三、写数据库操作
方法1:使用recordset对象(此方法一般初学者使用较多)。方法如下—以ACCESS数据库为例:
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS数据库文
件.MDB" …打开到数据库的连接
Dim rs As New Recordset '声明一个记录集对象
rs.Open [记录源, cnn, 游标类型, 锁定类型, 命令类型] …也可先设置记录集相关属性
rs.addnew …告诉rs我们要添加一行
rs("字段名称1或索引") =值1 …给要添加的行的一个字段赋值,三种方法等价
rs.fields("字段名称2或索引") =值2
rs!字段名称3 =值3
…….
rs.update …通知rs我们要把这个行写入数据库
rs.close …关闭记录集对象
cnn.Close …关闭与数据库的连接
set rs=Nothing …释放rs对象实例
set cnn=Nothing …释放Connection对象实例
l addnew使用方法后,如果要放弃添加的结果,应调用记录集的CancelUpdate方法放弃。
方法2:使用Connection对象的Execute方法对表进行SQL记录插入操作(要求要熟悉SQL 命令)
Dim cnn As New ADODB.Connection …创建Connection对象cnn,关键字new用于创建新对象
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ACCESS数据库文
件.MDB" …打开到数据库的连接
strSQL = "Insert Into 数据表(字段1, 字段2…..) Values(值1, 值2…..)…拼写Insert插入语句
cnn.Execute strSQL '执行Insert语句实现添加