关闭

简单模糊查询

824人阅读 评论(0) 收藏 举报

开发环境:Microsoft Visual Studio2005

数据库:SQL Server2000

步骤:

step1:新建一个项目Query

              文件→新建→项目→在项目类型中展开Visual C#→选中"Windows"→在模板中选择"Windows应用程序"→指定名称(Query)和位置(自定义)→确定

step2:设置主窗体(将其命名为mainFrm.cs)

              置IsMdiCotianer属性值为True   //设置该窗体成为多个子窗体的父窗体

step3:向主窗体添加菜单栏

              向窗体中添加menuStrip控件,在控件中输入"基本信息查询(&Q)"

 step4:新增一个窗体(名为queryFrm.cs)并在其中添加控件

控件属性
控件名 属性
Label Name label1
  Text 查询条件
Label Name label2
  Text 字段名称
ComboBox DropDownStyle DropDownList
textBox1 Text  
button1 Name btnquery
  Text 查询
DataGridView Name dataGridView1
  Anchor Top, Bottom, Left, Right

step5:添加类operateDB

1、右击项目→添加→类(命名为operateDB.cs)
2、类的代码如下:
//operateDB类 用来操作数据库
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace studentMIS
{
    class operateDB
    {
        string strconn = "server=localhost;database=studentM;integrated security=sspi;pooling=false";//本地数据库
        SqlConnection conn = new SqlConnection(strconn);
        SqlCommand cmd = new SqlCommand();
        SqlDataAdapter da = new SqlDataAdapter();
        DataSet ds = new DataSet();

        public DataSet QueryDB(string strChoice,string strquery1,string strquery2, string strquery3,string strquery4)
        {
            if (strChoice == "学号")
            {
                cmd = conn.CreateCommand();
                da.SelectCommand = cmd;
                ds.Clear();
                cmd.CommandText = strquery1;
                da.Fill(ds, "table");
            }
            else if (strChoice == "姓名")
            {
                cmd = conn.CreateCommand();
                da.SelectCommand = cmd;
                ds.Clear();
                cmd.CommandText = strquery2;
                da.Fill(ds,"table");
            }
            else if (strChoice == "专业")
            {
                cmd = conn.CreateCommand();
                da.SelectCommand = cmd;
                ds.Clear();
                cmd.CommandText = strquery3;
                da.Fill(ds, "table");
            }
            else if (strChoice == "班级")
            {
                cmd = conn.CreateCommand();
                da.SelectCommand = cmd;
                ds.Clear();
                cmd.CommandText = strquery4;
                da.Fill(ds, "table");
            }
            return ds;
        }
    }
}

step6:运行时主窗体时如何显示查询窗体

               private void 基本信息查询ToolStripMenuItem_Click(object sender, EventArgs e)
               {
                     queryFrm qFrm = new queryFrm();
                     qFrm.MdiParent = this;
                     qFrm.Show();
                }

step7:查询窗体queryFrm.cs的代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Query
{
    public partial class queryFrm : Form
    {
        operateDB op_DB = new operateDB();
        DataSet myds = new DataSet();
        public queryFrm()
        {
            InitializeComponent();
        }

        private void btnquery_Click(object sender, EventArgs e)
        {
            string strxz =this.comboBox1.SelectedItem.ToString().Trim();
            string strcx1 = "select * from student where 学号 like '%" + this.textBox1.Text.ToString().Trim() +"%'";
            string strcx2 = "select * from student where 姓名 like '%" + this.textBox1.Text.ToString().Trim() + "%'";
            string strcx3 = "select * from student where 专业 like '%" + this.textBox1.Text.ToString().Trim() + "%'";
            string strcx4 = "select * from student where 班级 like '%" + this.textBox1.Text.ToString().Trim() + "%'";
            this.myds = this.op_DB.QueryDB(strxz,strcx1,strcx2, strcx3,strcx4);
            this.dataGridView1.DataSource=myds;
            this.dataGridView1.DataMember="table";
        }
    }
}

step8:备注:数据库使用的是SQL Server2000

创建了数据库studentMIS,里面有张student表(字段数据类型不一定符合,只用来测试用的)

表结构如下:

列名 数据类型 长度
学号 char 10
姓名 char 10
性别 char 2
出生日期 datatime 8
身份证号 char 18
专业 char 30
班级 char 4
家庭电话 char 15
家庭住址 char 50
住宿情况 char 2
住宿地址 char 50

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5040次
    • 积分:96
    • 等级:
    • 排名:千里之外
    • 原创:4篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档