实验成语查询系统.doc_第1页
实验成语查询系统.doc_第2页
实验成语查询系统.doc_第3页
实验成语查询系统.doc_第4页
实验成语查询系统.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C#实验 设计一个成语查询系统 09043102 一、实验目的 本实验主要是使用ADO.NET、使用Command与Datareader对象、使用DataAdapter与DataSet连接数据库,练习简单的统计查询方法、绑定DataGridView到数据源的方法、绑定其他控件到数据源的方法。二、实验内容 实验要求:实现用户登录,并对数据库中的成语进行浏览、查询(精确和模糊)、添加、删除、修改等基本功能。三、实验设计 1.用户登录 用户表(123)结构及记录如图1.1所示。 管理员登录功能由form1.cs窗体实现。管理员可以通过输入用户名和密码,单击“登录”按钮实现登录功能,单击“取消”按钮关闭窗口,如图1.2所示。 图1.1 用户表(123) 图1.2 登陆界面代码如下:Form1()的代码namespace 查询系统 public partial class Form1 : Form public Form1() InitializeComponent(); string str = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection conn = new OleDbConnection(); OleDbDataReader result = null; public bool loginus(string un, string pw) conn.ConnectionString = str; string sql = select * from 123 where username= + un + and password= + pw + ; OleDbCommand cmd = new OleDbCommand(sql, conn); conn.Open(); try result = cmd.ExecuteReader(); catch (Exception) MessageBox.Show(对不起!查询数据失败!, 提示); if (result != null) if (result.Read() return true; result.Close(); conn.Close(); return false; private void button1_Click(object sender, EventArgs e) string n = textBox1.Text.Trim(); string p = textBox2.Text.Trim(); if (textBox1.Text != ) & (textBox2.Text != ) if (loginus(n, p) = false) MessageBox.Show(用户或密码错); return; DialogResult = DialogResult.OK; this.Hide(); private void button2_Click(object sender, EventArgs e) this.Close(); 包含Main()函数的类的代码namespace 查询系统 static class Program / / 应用程序的主入口点。 / STAThread static void Main() Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Form1 lf = new Form1(); if (lf.ShowDialog() = DialogResult.OK) lf.Dispose(); Application.Run(new chaxun(); 2.主窗体介绍登录成功后进入查询的主窗体界面。下面是对主窗体及相关的数据表进行设计。(1) 创建数据库:在microsoft office access 2003中建立数据表 成语。所用到的表 成语 及其结构、记录如图1.3所示. 图1.3 成语表的结构及记录 (2)设计界面:在空白窗体添加菜单MenuStrip、标签、Textbox、DataGriVview等控件,对控件的属性进行修改,如表1-1所示.表1-1 控件属性及其属性值控件名称 属性属性值MenustripItems浏览(查看所有、保存结果)、查询(模糊查询、精确查询)、添加、删除、刷新、退出Label1Text选择方式:GroupBox1Text操作界面Label2Text设置值:Label3Text拼音:Label4Text成语:Label5Text备注:Label6Text显示界面button1Text精确查询button2Text模糊查询button3Text添加button4Text修改button5Text删除comboBox1Items拼音检索、汉字检索 然后进行整体布局调整,窗体效果如图1.4所示。图1.4 窗体效果 浏览和查询菜单的设计如图1.5所示。 图1.5 浏览和查询菜单的设计(3)定义shuaxin()和qingkong()刷新:void shuaxin() string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection con = new OleDbConnection(); con.ConnectionString = aa; string cmdText = select * from 成语; OleDbDataAdapter da = new OleDbDataAdapter(cmdText, con); DataSet ds = new DataSet(); try con.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(对不起!打开数据库失败!, 提示); finally con.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; 清空: void qingkong() textBox2.Text = ; textBox3.Text = ; textBox4.Text = ; (4)实现精确查询的功能代码(在选择方式中选择是以汉字检索,还是以拼音检索)。private void 精确查询AToolStripMenuItem_Click(object sender, EventArgs e) if (comboBox1.Text = ) MessageBox.Show(请先选择查询方式!, 提示); else string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection oleDbConnection1 = new OleDbConnection(); oleDbConnection1.ConnectionString = aa; string sql = select * from 成语 where + comboBox1.Text + = + textBox1.Text + ; OleDbCommand oleDbCommand1 = new OleDbCommand(); oleDbCommand1.CommandText = sql; oleDbCommand1.Connection = oleDbConnection1; OleDbDataAdapter da = new OleDbDataAdapter(sql, oleDbConnection1); DataSet ds = new DataSet(); try oleDbConnection1.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(对不起!精确查找失败!, 提示); finally oleDbConnection1.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; 精确查询按钮:代码与上面相同 (5)实现模糊查询的功能代码(在选择方式中选择是以汉字检索,还是以拼音检索)。private void 模糊查询BToolStripMenuItem_Click(object sender, EventArgs e) if (comboBox1.Text = ) MessageBox.Show(请选择查询方式!, 提示); else string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection oleDbConnection1 = new OleDbConnection(); oleDbConnection1.ConnectionString = aa; string sql = select * from 成语 where + comboBox1.Text + like + textBox1.Text + %; OleDbCommand oleDbCommand1 = new OleDbCommand(); oleDbCommand1.CommandText = sql; oleDbCommand1.Connection = oleDbConnection1; OleDbDataAdapter da = new OleDbDataAdapter(sql, oleDbConnection1); DataSet ds = new DataSet(); try oleDbConnection1.Open(); da.Fill(ds); catch (Exception) MessageBox.Show(对不起!模糊查询失败!, 提示); finally oleDbConnection1.Close(); dataGridView1.DataSource = ds.Tables0.DefaultView; 模糊查询的按钮:代码与上面相同 (6)添加成语信息功能。private void 添加ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection con = new OleDbConnection(); con.ConnectionString = aa; string cmdText = insert into 成语(拼音检索,汉字检索,备注) values( + textBox2.Text + , + textBox3.Text + , + textBox4.Text + ); OleDbCommand cmd = new OleDbCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!添加数据失败!, 提示); finally con.Close(); shuaxin(); 添加按钮:代码与上面相同 (7)修改成语信息功能。private void 修改ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection con = new OleDbConnection(); con.ConnectionString = aa; string cmdText = update 成语 set 备注= + textBox4.Text + where +comboBox1.Text + = + textBox1.Text + ; OleDbCommand cmd = new OleDbCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!修改数据失败!, 提示); finally con.Close(); shuaxin(); 修改按钮:代码与上面相同 (8)删除成语信息功能。 private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) string aa = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:学习资料C#090431123.mdb; OleDbConnection con = new OleDbConnection(); con.ConnectionString = aa; MessageBox.Show(删除前请先查询); if (comboBox1.Text = ) MessageBox.Show(请先输入删除的类型); else string cmdText = delete from 成语 where + comboBox1.Text + = + textBox1.Text + ; OleDbCommand cmd = new OleDbCommand(cmdText, con); try con.Open(); cmd.ExecuteNonQuery(); qingkong(); catch (Exception) MessageBox.Show(对不起!删除数据失败!, 提示); finally con

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论