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";
                }
                //对话框显示result
                MessageBox.Show(result);
            }
            else
            {
                //dr无记录时弹出对话框进行提示
                MessageBox.Show("无记录");
            }
            //关闭dr
            dr.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 (洋葱先生)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值