dataGridView 增删改数据库

yiweidianzi 2011-04-04 09:56:37
用dataGridView进行数据库表的增删改,求精简的示例代码,
...全文
72 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
暖枫无敌 2011-04-04
  • 打赏
  • 举报
回复
这是学习ADO.NET数据库操作所必须掌握的只是,看来得好好补下ADO.NET的知识了。


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

namespace dataGridViewUse
{
public partial class Form1 : Form
{
private OleDbConnection con = null;
private OleDbCommand com = null;
private OleDbDataAdapter adapter = null;
private OleDbDataReader dr = null;
private string s;
private string sqlstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/My Documents/Visual Studio 2005/Projects/dataGridViewUse/dataGridViewUse/表.mdb";
private System.Windows.Forms.DataGrid dataGrid1;
private DataSet ds = null;
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
dataGridView1.Refresh();

con = new OleDbConnection(sqlstring);
getData();

//水晶报表
DataSet1 d = new DataSet1();
this.areaTableAdapter.Fill(d.Area);
CrystalReport1 c = new CrystalReport1();
c.SetDataSource(d);
crystalReportViewer1.ReportSource = c;
}
//得到表Area里所有的数据
private void getData()
{
try
{
con.Open();
adapter = new OleDbDataAdapter("select * from Area", con);
ds = new DataSet();
adapter.Fill(ds, "Area");
dataGridView1.DataSource = ds.Tables["Area"];

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{

}

//增加的方法
public void methodAdd()
{
// TODO: 这行代码将数据加载到表“表DataSet.Area”中。您可以根据需要移动或移除它。
// this.areaTableAdapter1.Fill(this.表DataSet.Area);
// this.areaTableAdapter.Fill(dataSet11.Area);

//dataGridView1.Refresh();
}
//增
private void btadd_Click(object sender, EventArgs e)
{
try
{
con.Open();
s = "insert into Area(lngAreaID,strAreaCode) values(" + txtid.Text.Trim() + ",'" + txtcode.Text.Trim() + "')";
com = new OleDbCommand(s, con);
com.ExecuteNonQuery();
con.Close();
this.getData();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
}
}
//删
private void btdel_Click(object sender, EventArgs e)
{
try
{
con.Open();
s = "delete from Area where lngAreaID=" + dataGridView1[dataGridView1.CurrentCell.ColumnIndex,dataGridView1.CurrentCell.RowIndex].Value;
com = new OleDbCommand(s, con);
com.ExecuteNonQuery();
con.Close();
MessageBox.Show("删除成功");
this.getData();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
}
}
//改
private void btupdate_Click(object sender, EventArgs e)
{
try
{
con.Open();
s = "update Area set strAreaCode='" + txtcode.Text.Trim() + "' where lngAreaID=" + dataGridView1[0,dataGridView1.CurrentCell.RowIndex].Value;
com = new OleDbCommand(s, con);
com.ExecuteNonQuery();
con.Close();
MessageBox.Show("修改成功");
this.getData();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
}
}
//查
private void btfind_Click(object sender, EventArgs e)
{
try
{
con.Open();
adapter = new OleDbDataAdapter("select * from Area where lngAreaID like '%" + txtid.Text.Trim() + "%'", con);
ds = new DataSet();
adapter.Fill(ds, "Area");
dataGridView1.DataSource = ds.Tables["Area"];

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}
//单击datagridview的事件
private void dataGridView1_Click(object sender, EventArgs e)
{
if (dataGridView1[0, dataGridView1.CurrentCell.RowIndex].Value.ToString() == "")
return;
try
{
con.Open();
s = "select * from Area where lngAreaID=" + dataGridView1[0, dataGridView1.CurrentCell.RowIndex].Value;
com = new OleDbCommand(s, con);
dr = com.ExecuteReader();
if (dr.Read())
{
txtid.Text = dr[0].ToString();
txtcode.Text = dr[1].ToString();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}

private void button1_Click(object sender, EventArgs e)
{
Form2 f = new Form2(this.dataGridView1);
f.ShowDialog();
}
}
}


hzsagile 2011-04-04
  • 打赏
  • 举报
回复
示例源码下载
http://download.csdn.net/source/3042221
燕小七 2011-04-04
  • 打赏
  • 举报
回复
http://v.youku.com/v_show/id_XMjI3NTAzMzY4.html

这个视频还不错,你看看吧,比贴代码强

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧