用VB计算access的表里符合条件的个数

表的名称是AB,里面有三列,分别是 姓名、班级、成绩。想通过VB获取表里一班,且成绩为80分的人的个数。

Adodc1.RecordSource = "select * from AB "
Adodc1.Refresh
在refresh这里总出错,求解

VB中连接 Access 数据库,直接用 Data 数据控件就可以了,其在设置上也比较简单.
如:
窗体中放置 Data1 数据控件
在 Form_Load()事件中初试化数据控件并连接数据源
With Data1
.DataName="数据文件路径及名称" 如:"C:\zbc.mdb"
.RecordSource="SELECT * FROM AB"
.Refresh
End With
就OK了
要想实现查询,如:

With Data1
.DataName="数据文件路径及名称" 如:"C:\abc.mdb"
.RecordSource="SELECT * FROM AB WHERE 班级='1' AND 成绩>=80"
.Refresh
End With

Adodc 数据控件当然也能连接 Access 数据库,只是在设置连接字符串的时候比较讲究.如ConnectionString 中要考虑数据库是否加密及数据库访问者等信息, CommandType 属性要考虑使用的是表还是查询等等资料 ....
如:
With Adodc1
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=C:\abc.mdb"
.CommandType = adCmdText
.RecordSource = "SELECT * FROM AB "
.Refresh
End With追问

我用的是Adoddc1,也可以实现,但是当我把查询条件增加到两个时 refresh出错,一个时不报错。代码如下
Adodc1.recordsouce="select * from table where (" & "姓名=’“&text1.text&”‘’) and (" & "成绩=’“&text2.text&”‘’) "

追答

你的的这句 有些问题 Adodc1.recordsouce="select * from table where (" & "姓名=’“&text1.text&”‘’) and (" & "成绩=’“&text2.text&”‘’) "

一般写条件时这样:
Where (姓名='" & Trim(Text1.Text) & "' AND 成绩 =" & Text2.Text & "')"
因为这里字段"成绩"你用的是数字的话,"值"的引用就不能加单引号了.
我一般向下面这样写:
Where (姓名='"+Trim(Text1)+"' AND 成绩="+Format(Text2)+")"
这里用Format进行转换.

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-10
Adodc1.ConnectionString = "" '是连接Access数据库的连接语句,例如:
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=路径/文件名.mdb;Persist Security Info=False"
有了数据库连接,才能:Adodc1.RecordSource = "select * from AB Where 成绩>=80"
再操作Adodc1的记录集:Adodc1.Recordset,当然操作记录集的方法很多,自己琢磨

用VB计算access的表里符合条件的个数
VB中连接 Access 数据库,直接用 Data 数据控件就可以了,其在设置上也比较简单.如:窗体中放置 Data1 数据控件 在 Form_Load()事件中初试化数据控件并连接数据源 With Data1 .DataName="数据文件路径及名称" 如:"C:\\zbc.mdb".RecordSource="SELECT * FROM AB".Refresh End With 就OK了 要想...

用vb怎么样能获取一个access表里面的记录总数?
先用记录集打开此表 然后用记录集的recordcount属性获取记录条数 1.dim s as long rs.open "select * from table",con s=rs.recordcount-1 2.dim s as long rs.open "select count(*) from table",con s=rs.fields(0)

vb6.0+access怎么计算按条件查询出的结果并计算结果的数量
select count(*) from 表名 where 商品名='电视'

vb 在text中显示access数据库中的某一例数值的总数
Adodc1.RecordSource = "select sum(收入) as 收入合计 from 你的表名'也可以加上需要的条件 Where 你需要的条件 =" & 条件1 & "and 部门 = '" & 条件2 & "'"Adodc1.Refresh Adodc1.Recordset.MoveLast 你的text.text = Adodc1.Recordset.Fields("收入合计")adodc会连接吧 ...

在VB中求ACCESS表 共有多少条记录(出问题了)
呵呵 计算多少条记录用rs.RecordCount即可 你上面的出错在rs.MoveFirst 应这样if not (rs.bof and rs.eof) then rs.MoveFirst

VB中计算access表中某列不同内容出现的次数
下面是VB的方法:加入用data(取名为data1)控件连接数据库的话,用DBGrid控件显示数据,筛选性别为男的数据,统计个数,在DBGrid控件中显示出来。先将DBGrid控件的datasource属性设置为data1,data1.recordsource="Select * From 表一 where 性别='男'"这一条语句就会使DBGrid显示筛选结果,如要统计数量...

怎么用VB读取ACCESS表中的某个值
sql = "select * from 表名 where 姓名='" & Combo1.Text & "'"Set rs = New ADODB.Recordset rs.Open sql,conn,adOpenKeyset,adLockOptimistic If rs.EOF = True Then MsgBox "该同学不存在", , "提示"Else If rs.Fields(1) = Combo2.Text Then text.text = rs.Fields(2)Else Msg...

如何利用VB知道数据库ACCESS的行数,请举例谢谢
SELECT COUNT(*) AS ProductCount,COUNT(ProductModelID) AS ModelCount,COUNT(DISTINCT ProductModelID) AS DistinctCount FROM Production.Product 结果:ProductCount ModelCount DistinctCount 25 10 15 count函数就是统计行数的函数,你可以使用,还可以去除null列 ...

怎么在VB中通过某个条件查询access数据库?并显示出所有字段
1.在VB界面选“工程”菜单-》“部件”菜单项,系统打开“部件”对话框 选择2个ADO控件,即“Microsoft ADO Data Control 6.0”(简称ADODC)和“Microsoft DataGrid Control 6.0”。这两个控件前者用来连接数据库,用于以表格形式显示数据库表的内容。2.在VB界面中加入ADODC及DataGrid,设置ADODC的...

50分求解,在VB6.0中查询Access数据库多字段并加条件查询,?
ADODC控件要设置两个属性 ConnectionString="连接到数据库的字符串",点击边上的下拉按钮就能浏览到你要的数据库,也可以直接在程序中设置。RecordSource=“要打开的数据表或者查询”然后TextBox要设置两个属性 DataSource=上面设置的那个数据控件,比如ADODC1,你把ADODC控件添加到Form中的时候,在这个属性...

相似回答