| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6784 人关注过本帖
标题:请教各位大牛:Access数据库里面如何通过SQL语句查询,使得查询结果显示在窗 ...
只看楼主 加入收藏
ppxe310
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2017-12-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
请教各位大牛:Access数据库里面如何通过SQL语句查询,使得查询结果显示在窗体上呢?
Access数据库里面有两张表,建立一个窗体,想从数据表里面随机抽取两条记录显示在窗体上,如何做到呢?
数据库见附件。
问题
1. 想通过点击“随机抽取执法人员”按钮,能够从“执法人员名单”表里面随机抽取两位执法人员,显示其姓名
2. 击“随机抽取检查企业”,能够从“抽查企业名单”中随机选出一个企业信息
搜索更多相关主题的帖子: 数据库 查询 显示 窗体 随机 
2017-12-26 15:43
ppxe310
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2017-12-26
收藏
得分:0 
回复 楼主 ppxe310
RandSystem.rar (38.79 KB)
Access数据库文件
2017-12-26 15:45
wds1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:49
帖 子:393
专家分:2025
注 册:2016-3-10
收藏
得分:20 
【需要引用Microsoft Activex Data Objects XX Library】
Private Sub Command1_Click()
 Dim conn As ADODB.Connection
 Set conn = New ADODB.Connection
  conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=F:\VB\temp\RandSystem.accdb;Persist Security Info=False"
  conn.Open
  strsql = "select * from 执法人员名单"
  Dim rs As ADODB.Recordset
  Set rs = New ADODB.Recordset
  rs.Open strsql, conn, 1, 1
  '自己编写随机数算法,以下示例显示1,3记录
  MsgBox "记录数:" & Str(rs.RecordCount)'显示总记录数’
  MsgBox rs.Fields(1)'显示第一个记录【具体显示随机数自己编写】
  rs.Move 3
  MsgBox rs.Fields(1)'显示第三个记录
End Sub
2017-12-26 16:43
ppxe310
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2017-12-26
收藏
得分:0 
回复 3楼 wds1
太感谢了,我试试
2017-12-26 16:45
ppxe310
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2017-12-26
收藏
得分:0 
回复 3楼 wds1
太感谢了,帮我解决了大问题,现在问题又来了,如何把查询结果放入窗体中的那个文本框里面呢?
Private Sub Command2_Click()
  Dim conn As ADODB.Connection
  Set conn = New ADODB.Connection
  conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Joyce\Desktop\tmp\RandSystem.accdb;Persist Security Info=False"
  conn.Open
  strsql = "SELECT TOP 2 执法人员名单.[姓  名] FROM 执法人员名单 ORDER BY RND(ID)"
   
  Dim rs As ADODB.Recordset
  Set rs = New ADODB.Recordset
  rs.Open strsql, conn, 1, 1
  
   '自己编写随机数算法,以下示例显示1,3记录
  MsgBox "记录数:" & Str(rs.RecordCount) '显示总记录数’
  
  Text4 rs.Fields(1) '//如何把查询结果放入窗体中的那个文本框里面呢? 系统提示这样做不对
  rs.Move 2
  Text4 rs.Fields(1) '显示第二个记录

End Sub
2017-12-26 17:18
wds1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:49
帖 子:393
专家分:2025
注 册:2016-3-10
收藏
得分:0 
'如果数据库没有空记录,判断可以不要,不同窗体要加窗体名,如果是文本控件赋值如下’
 If Not IsNull(rs.Fields(1))  Then text4.text=rs.fileds(1)

      
2017-12-26 17:37
ppxe310
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2017-12-26
收藏
得分:0 
回复 6楼 wds1
修改为这样: If Not IsNull(rs.Fields("姓  名")) Then Me.Text4.Value = rs.Fields("姓  名").Value
问题就解决了。

太感谢了,
2017-12-27 11:13
小白N
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2021-5-15
收藏
得分:0 
思考如何从数据库中获取数据,并对其进行简单处理以后显示到窗体中。例如从数据库中读取一名学生的成绩(比如90分),加5分后将新的成绩(95分)显示在窗体(控件)中。将整个问题的描述及处理步骤和相关代码写成word文档
2021-05-15 20:33
快速回复:请教各位大牛:Access数据库里面如何通过SQL语句查询,使得查询结果显 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031200 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved