| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1958 人关注过本帖
标题:VB2005中用多线程来获取数据到DATAGRIDVIEW控件
只看楼主 加入收藏
zhx850516
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-10-6
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
VB2005中用多线程来获取数据到DATAGRIDVIEW控件
VB2005中用多线程来获取数据到DATAGRIDVIEW控件
Sub 查询()
  Dim command As New techbook.A_操作类
  command.connstr = 网络数据库信息
  command.公用查询类("无条件精确查询", "订单入库表", "", "", "", "", "", "", "upc", DGV1)
  command.close()
 End Sub

以上是获取数据的过程


以下是自定义类的代码:
  Public Sub 公用查询类(ByVal 查询类型 As String, ByVal 表名 As String, ByVal 关键字1 As String, ByVal 关键字2 As String, ByVal 条件1 As String, ByVal 条件2 As String, ByVal 起始时间 As String, ByVal 结束时间 As String, ByVal 排序字段 As String, ByVal dgv As DataGridView)
  open()
  Select Case 查询类型
  Case "无条件精确查询"
  str = "select * from " & 表名 & " order by " & 排序字段
  m_cmd = New SqlCommand(str, conn)
  m_ada.SelectCommand = m_cmd
  m_ds.Clear()
  m_ada.Fill(m_ds, 表名)
  dgv.DataSource = m_ds.Tables(表名)
  Case "单条件精确查询"
  str = "select * from " & 表名 & " where " & 关键字1 & " = '" & 条件1 & "' order by " & 排序字段
  m_cmd = New SqlCommand(str, conn)
  m_ada.SelectCommand = m_cmd
  m_ds.Clear()
  m_ada.Fill(m_ds, 表名)
  dgv.DataSource = m_ds.Tables(表名)
  Case "单条件模糊查询"
  str = "select * from " & 表名 & " where " & 关键字1 & " like '%" & 条件1 & "%' order by " & 排序字段
  m_cmd = New SqlCommand(str, conn)
  m_ada.SelectCommand = m_cmd
  m_ds.Clear()
  m_ada.Fill(m_ds, 表名)
  dgv.DataSource = m_ds.Tables(表名)

  Case "双条件精确查询"

  str = "select * from " & 表名 & " where " & 关键字1 & " = '" & 条件1 & "' and " & 关键字2 & " ='" & 条件2 & "' order by " & 排序字段
  m_cmd = New SqlCommand(str, conn)
  m_ada.SelectCommand = m_cmd
  m_ds.Clear()
  m_ada.Fill(m_ds, 表名)
  dgv.DataSource = m_ds.Tables(表名)
  End Select

以上程序代码在运行过程中会出现假死的现象,我想请高手教我如何使用多线程或者异步调用的方法来获取数据库中的数据
搜索更多相关主题的帖子: 关键字 网络数据库 command 多线程 
2011-11-15 22:35
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
收藏
得分:20 
数据量过大时,会出现假死吧。可以使用分页查询技术。

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2011-11-17 13:53
zhx850516
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-10-6
收藏
得分:0 
不光时因为数据量大,还是网络数据库,远程读取,所以假死!
2011-11-17 17:57
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
收藏
得分:0 
使用存储过程,由远程数据库服务器端执行SQL命令

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2011-11-18 11:03
快速回复:VB2005中用多线程来获取数据到DATAGRIDVIEW控件
数据加载中...
 
   



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

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