DATA数据控件怎么同时查询几个字段?

fage168 2009-01-09 05:03:47
我用DATA数据控件,查询单个字段代码如下:

Data1.Recordset.FindNext "A=30" 'A列字段等于30的数据

数据库有ABCDE列,假如想查询ABC三列都等30的一行数据,代码怎么写?

如果DATA做不到,那什么DAO、ADO行不行.......头晕中

谢谢~~~~
...全文
57 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fage168 2009-01-10
  • 打赏
  • 举报
回复
多谢大家,我试了下,这个语句是可以同时搜索几个字段的:

sql = "select * from TableName where A = 30 and B =30 And C = 30"

如果给查询条件加括号的话效果也一样
sql = "select * from TableName where (A = 30 and B =30 And C = 30)"

不过我有个数据库有一个字段是“all”,似乎这个字段名不能用在此查询语句如all = 30 and b=30,程序报错,不知道什么原因。
wug7203 2009-01-10
  • 打赏
  • 举报
回复
用Sql 查询问 "select * from TableName where A = 30 and B =30 And C = 30"
of123 2009-01-10
  • 打赏
  • 举报
回复

记录集的 Find 方法,无论 DAO (Data 控件所用的)还是 ADO 都仅支持单一条件,也就是一个字段。

比较方便的是,使用 Filter 方法,但显示效果是不同的:Find 方法是定位的找到的记录上,而 Filter 方法是过滤掉其他记录,仅仅留下符合条件的。

还有一种方法是:

Do
Data1.Recordset.FindNext "A=30"
If Data1.Recordset.EOF The Exit Do
If Data1.Recordset.Fields("B") = 30 And Data1.Recordset.Fields("C") = 30 Then Exit Do
Loop
zdingyun 2009-01-09
  • 打赏
  • 举报
回复
用ADO数据控件可以实现:

sql = "select * from TableName where A = 30 and B =30 And C = 30"
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = sql
Adodc1.Refresh'对查询更新
DataGrid1.Refresh

请修改Adodc1.ConnectionString赋值句中的数据库路径和名称,修改sql赋值句中的数据表名及字段名

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧