一.在vb中使用ADO引用来访问数据库
1.建立ADO引用:
从引用内容可以看出,vb中有多个ADO对象库,但引用时只能选择一种。
(任一版本的ADO对象库都可以连接到数据库,每种版本在以前的基础上都有所改善,2.5及以上版本加入了stream数据流对象,用来访问SQL中的IMAGE字段或其他数据库中的二进制数据,推荐使用2.5以上版本)
2.建立数据库连接
添加过程,在建立连接的情况下,对输入的信息进行标记 | Check_password |
将数据库连接实例化 | Dim objcn as new connection |
进行连接 | objCn.ConnectionString = "provider=microsoft.jet.oledb.3.51;" & "data source=" & "源文件位置" |
打开数据源连接 | Objcn.open |
执行查询命令 | strSQL = "select 口令 from 系统用户 where 用户名='" & username & "'" |
定义记录集,并将数据源的活动连接设置为已建立的connection对象 | Set objRs.ActiveConnection = objCn |
打开记录集 | objRs.Open (strSQL) |
判断有没有查询结果 | 用If判断语句对输入信息分别进行标记 |
关闭数据库,释放内存,退出过程 | objCn.Close |
(1)单双引号:access数据库中
1)若字段类型为字符串,用单引号。vb中用双引号
eg:Adodc1.RecordSource = "select * from tb_userwhere 操作员='张三'"
2)若字段类型为日期,用#:
eg:Adodc1.RecordSource ="select * from tb_user where 日期>=#2011-1-1#"
3)若字段类型为数值,啥也不用:
eg:Adodc1.RecordSource ="select * from tb_user where 登录次数>100"
(2)基本sql语句:1)数据记录筛选:
eg:sql="select * from 数据表 where字段名=字段值 order by字段名[desc]"
2)更新数据记录:
eg:Sql="update 数据库 set 字段名=字段值 where 条件表达式"
3)删除数据记录:
eg:Sql"delete from 数据表 where 条件表达式"
4)添加数据记录:
eg:Sql="insert into 数据表(字段1,字段2,字段3……)values(值1,值2,值3……)"
from :从from开始生成虚拟表(后面的数据都是从这里的表中的数据筛选的所以编译自此始);
where:从where开始就开始对数据进行第一步的筛选;
group by :对筛选出来的数据进行分组;
having:对分好的组进行筛选;
select:对筛选好的数据进行调用;
order by:对调用的数据排序输出。
where(紧随from其后,将不满足的行过滤掉),where='字符或者日期';
(3)goto语句:例子中用于编误提示 On Error GoTo gperror出错时跳转到gperror
(4)因为自定义函数过程为byte即字节型,所以pass_word取值为[0,255],在这个范围内只要相互之间不影响取任何一个值都可以。
3.查询验证信息
限定输入次数 | msgbox用于提醒 |
用trim()语句获得输入信息 | strname = Trim(txtusername.Text) |
检验输入信息是否正确,并根据检验返回值执行相应操作 | select……case语句对应if语句中对pass_word所做的标记进行 |
二.使用ADO实现对ODBC数据源的访问操作
1.创建ODBC数据源
2.引用ADO,建立数据源连接(创建connection对象)
3.检索数据,创建recordset对象,设定相应属性
4.操作数据,用flag做标记,dosave执行更新操作
三.使用数据绑定访问数据库
1.设置ADO Data控件属性,获得数据库的记录源信息
2.设置文本框的数据绑定属性
DataSource | Adodc1 |
DataField | 用户名或口令 |
四.在第四个例子中主要有三个知识点(使用DataGrid控件和MSFlexGid控件实现分页显示记录)
1.记录集的分页特性
Pagesize | 设置或返回一个记录页中可包含的记录个数 |
Pagecount | 返回一个记录集的记录页总数 |
Absolutely | 设置或返回当前记录页编号 |
2.DataGrid控件
3.MSFlexGrid控件
Cols | 设置和返回控件的列数 |
Rows | 设置和返回控件的行数 |
Textmatrix | 设置和返回控件任意单元格的文本内容 MSFlexGrid1.TextMatrix(0, i) = objrs.Fields(i).Name |
五.使用ADO Command对象创建参数查询实现数据库查询功能
1.创建command对象,使用?作为select语句的查询参数
objcmd.CommandText ="select *from 系统用户 where 用户名 like ?" & "and 身份like ?"
2.使用command对象createparameter方法创建参数对象,然后将其添加到command对象的parameters集合中。
3.设置查询参数的值
objcmd("用户名")= "%" & txtuser & "%"
4.执行command对象的execute方法完成查询。
Set objrs =objcmd.Execute()
5.用MSFlexGrid控件记录