WinForm 连接数据库后模糊查找实例-洋葱先生-杨少通

本文主要是介绍WinForm 连接数据库后模糊查找实例-洋葱先生-杨少通,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前提:创建数据库表,同文章:WinForm 数据库增、删、改、查实例

实现功能:

学生信息的模糊查询,选择要查询的依据,点击“查询”后弹出相应的学生信息,注意是模糊查询。

效果图如下:

在这里插入图片描述

代码如下:

     //实例化对象,用于开启程序和数据库之间的连接SqlConnection conn;//窗体Load事件private void _4_3_Load(object sender, EventArgs e){//连接数据库conn = new SqlConnection(@"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=WinFormSQL;Data Source=localhost");//打开数据库连接conn.Open();}//“查询”按钮的Click事件private void button1_Click(object sender, EventArgs e){//实例化对象,用于对数据库发出指令SqlCommand cmd = new SqlCommand();//向数据库发出打开/关闭指令cmd.Connection = conn;//定义字符串变量,用于获取结果string result;//选中“按姓名查询”if (radioButton1.Checked){//执行“查询”指令(按姓名模糊查找)cmd.CommandText = "select * from Student_Info where studentName like'" + textBox1.Text + "%'";result = "";//ExecuteReader()方法返回DataReader类型值SqlDataReader dr = cmd.ExecuteReader();//看一下dr存不存在记录,即是否查找到if (dr.HasRows){//查找到后进行while遍历while (dr.Read()){//定义字符串变量s,用于暂存一条遍历结果string s = "studentID:{0}   studentName:{1}   studentSex:{2}   studentAge:{3}   studentClass:{4}";s = string.Format(s, dr["studentID"], dr["studentName"], dr["studentSex"], dr["studentAge"], dr["studentClass"]);//变量result累加存储所有遍历结果result += s + "\n";}//对话框显示resultMessageBox.Show(result);}else{//dr无记录时弹出对话框进行提示MessageBox.Show("无记录");}//关闭drdr.Close();}//选中“按学号查询”-----以下内容同上if (radioButton2.Checked){//执行“查询”指令(按学号模糊查找)cmd.CommandText = "select * from Student_Info where studentID like'" + textBox1.Text + "%'";result = "";SqlDataReader dr = cmd.ExecuteReader();if (dr.HasRows){while (dr.Read()){string s = "studentID:{0}   studentName:{1}   studentSex:{2}   studentAge:{3}   studentClass:{4}";s = string.Format(s, dr["studentID"], dr["studentName"], dr["studentSex"], dr["studentAge"], dr["studentClass"]);result += s + "\n";}MessageBox.Show(result);}else{MessageBox.Show("无记录");}dr.Close();}}

代码均为原创,存在不足还请见谅!如有转载请注明来源: www.dreamload.cn/blog/?p=450&preview=true (洋葱先生)

这篇关于WinForm 连接数据库后模糊查找实例-洋葱先生-杨少通的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

MySQL MHA集群详解(数据库高可用)

《MySQLMHA集群详解(数据库高可用)》MHA(MasterHighAvailability)是开源MySQL高可用管理工具,用于自动故障检测与转移,支持异步或半同步复制的MySQL主从架构,本... 目录mysql 高可用方案:MHA 详解与实战1. MHA 简介2. MHA 的组件组成(1)MHA

MySQL 数据库进阶之SQL 数据操作与子查询操作大全

《MySQL数据库进阶之SQL数据操作与子查询操作大全》本文详细介绍了SQL中的子查询、数据添加(INSERT)、数据修改(UPDATE)和数据删除(DELETE、TRUNCATE、DROP)操作... 目录一、子查询:嵌套在查询中的查询1.1 子查询的基本语法1.2 子查询的实战示例二、数据添加:INSE

通过DBeaver连接GaussDB数据库的实战案例

《通过DBeaver连接GaussDB数据库的实战案例》DBeaver是一个通用的数据库客户端,可以通过配置不同驱动连接各种不同的数据库,:本文主要介绍通过DBeaver连接GaussDB数据库的... 目录​一、前置条件​二、连接步骤​三、常见问题与解决方案​1. 驱动未找到​2. 连接超时​3. 权限不

springboot+mybatis一对多查询+懒加载实例

《springboot+mybatis一对多查询+懒加载实例》文章介绍了如何在SpringBoot和MyBatis中实现一对多查询的懒加载,通过配置MyBatis的`fetchType`属性,可以全局... 目录springboot+myBATis一对多查询+懒加载parent相关代码child 相关代码懒

C++中的解释器模式实例详解

《C++中的解释器模式实例详解》这篇文章总结了C++标准库中的算法分类,还介绍了sort和stable_sort的区别,以及remove和erase的结合使用,结合实例代码给大家介绍的非常详细,感兴趣... 目录1、非修改序列算法1.1 find 和 find_if1.2 count 和 count_if1

MySQL中如何求平均值常见实例(AVG函数详解)

《MySQL中如何求平均值常见实例(AVG函数详解)》MySQLavg()是一个聚合函数,用于返回各种记录中表达式的平均值,:本文主要介绍MySQL中用AVG函数如何求平均值的相关资料,文中通过代... 目录前言一、基本语法二、示例讲解1. 计算全表平均分2. 计算某门课程的平均分(例如:Math)三、结合

MySQL数据库读写分离与负载均衡的实现逻辑

《MySQL数据库读写分离与负载均衡的实现逻辑》读写分离与负载均衡是数据库优化的关键策略,读写分离的核心是将数据库的读操作与写操作分离,本文给大家介绍MySQL数据库读写分离与负载均衡的实现方式,感兴... 目录读写分离与负载均衡的核心概念与目的读写分离的必要性与实现逻辑读写分离的实现方式及优缺点读负载均衡

Go语言中如何进行数据库查询操作

《Go语言中如何进行数据库查询操作》在Go语言中,与数据库交互通常通过使用数据库驱动来实现,Go语言支持多种数据库,如MySQL、PostgreSQL、SQLite等,每种数据库都有其对应的官方或第三... 查询函数QueryRow和Query详细对比特性QueryRowQuery返回值数量1个:*sql