如何将查询到的数据显示在DataGridView中

2024-05-05 00:58

本文主要是介绍如何将查询到的数据显示在DataGridView中,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景介绍:

数据库中的T_Line_Info表中存放着学生上机的记录,也就是我们需要查询上机记录的表,其中具体内容为:




界面设计如下:


右击DataGridView控件,选择编辑列,设计它的列名。


代码实现部分:

U层:

Public Class frmQueryOnRecordPrivate Sub btn_Query_Click(sender As Object, e As EventArgs) Handles btn_Query.ClickDim student As New Login.Model.LineInfoDim BUser As New Login.BLL.LoginManager'将输入的卡号传给实体student.cardno = txtcardno.TextDataGridView1.Visible = True'在数据库中查到该卡号的上机信息Dim uTable = BUser.QueryOnRecord(student)If uTable.Rows.Count > 0 Then'将数据显示在DataGridView中DataGridView1.Item(1, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("studentname")DataGridView1.Item(2, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("ondate")DataGridView1.Item(3, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("ontime")DataGridView1.Item(4, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("offdate")DataGridView1.Item(5, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("ontime")DataGridView1.Item(6, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("moeny")DataGridView1.Item(7, DataGridView1.NewRowIndex).Value = uTable.Rows(0)("consumemoney")Else'没有查到内容时DataGridView1.Rows.Clear()MsgBox("没有找到记录!")End IfEnd SubEnd Class



B层:

   Public Function QueryOnRecord(student As Login.Model.LineInfo) As DataTableDim f As New DFactory.DBFactoryDim istudent As Login.Interface.ILineInfoistudent = f.QueryOnlineInfo'接收DataTableTable = istudent.Query_OnRecord(student)'把Table返回到U层Return TableEnd Function

接口:

Public Interface ILineInfo'返回的类型是DataTableFunction Query_OnRecord(student As Login.Model.LineInfo) As DataTable
End Interface

实体:

Public Class LineInfo'与上机记录表中的字段一一对应Public cardno As StringPublic studentname As StringPublic ondate As StringPublic ontime As StringPublic offdate As StringPublic offtime As StringPublic money As StringPublic consumemoeny As StringEnd Class


sqlHelper中的GetDataTable方法

 Public Function GetDataTable(ByVal cmdTxt As String, ByVal cmdType As CommandType, ByVal paras As SqlParameter()) As DataTableDim strConnStr As String = System.Configuration.ConfigurationManager.AppSettings("ConnStr")'定义一个数据库连接对象  Dim conn As SqlConnection = New SqlConnection(strConnStr)Dim cmd As New SqlCommand '定义一个命令对象  Dim adataset As DataSetDim adaptor As SqlDataAdapter '定义一个适配器对象  cmd = New SqlCommand(cmdTxt, conn)adaptor = New SqlDataAdapter(cmd)adataset = New DataSetcmd.CommandType = cmdTypecmd.Parameters.AddRange(paras)Try'打开数据库连接  If conn.State = ConnectionState.Closed Thenconn.Open()End If'填充数据集  adaptor.Fill(adataset)Return adataset.Tables(0)Catch ex As ExceptionMsgBox(ex.Message, , "数据库操作")Finally'关闭数据库连接  If conn.State = ConnectionState.Open Thenconn.Close()End IfEnd TryEnd Function


D层:

Public Function QueryOnRecord(student As Login.Model.LineInfo) As DataTable Implements ILineInfo.Query_OnRecord'按卡号在上机记录表中查找Dim sql As String = "select * from T_Line_Info where cardno=" & student.cardnoDim cmd As SqlCommand = New SqlCommand(sql, conn)Dim helper As New Login.DAL.sqlHelper'设置参数Dim paras As SqlParameter() = {New SqlParameter("@cardno", student.cardno)}Tryconn.Open()'调用sqlhelper中的GetDataTable方法Return helper.GetDataTable(sql, CommandType.Text, paras)Catch ex As ExceptionMsgBox(ex.Message, "")End TryEnd Function

运行结果:



这篇关于如何将查询到的数据显示在DataGridView中的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/960476

相关文章

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

MyBatis Plus大数据量查询慢原因分析及解决

《MyBatisPlus大数据量查询慢原因分析及解决》大数据量查询慢常因全表扫描、分页不当、索引缺失、内存占用高及ORM开销,优化措施包括分页查询、流式读取、SQL优化、批处理、多数据源、结果集二次... 目录大数据量查询慢的常见原因优化方案高级方案配置调优监控与诊断总结大数据量查询慢的常见原因MyBAT

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

MySQL之复合查询使用及说明

《MySQL之复合查询使用及说明》文章讲解了SQL复合查询中emp、dept、salgrade三张表的使用,涵盖多表连接、自连接、子查询(单行/多行/多列)及合并查询(UNION/UNIONALL)等... 目录复合查询基本查询回顾多表查询笛卡尔积自连接子查询单行子查询多行子查询多列子查询在from子句中使

JAVA实现亿级千万级数据顺序导出的示例代码

《JAVA实现亿级千万级数据顺序导出的示例代码》本文主要介绍了JAVA实现亿级千万级数据顺序导出的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 前提:主要考虑控制内存占用空间,避免出现同时导出,导致主程序OOM问题。实现思路:A.启用线程池