简单模糊查询

王朝other·作者佚名  2007-01-18
窄屏简体版  字體: |||超大  

开发环境: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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航