using System.Data.SqlClient; using System.Data;//使用SqlServer数据库可自动实现更新,代码很简单 DataSet ds = new DataSet(); string sql = "select * from myTable"; string cnnStr = "server=.;uid=sa;pwd=;database=myDatabase"; SqlConnection cnn = new SqlConnection(cnnStr); SqlDataAdapter adp = new SqlDataAdapter(sql,cnn); adp.SelectCommand = new SqlCommand(sql,conn); adp.Fill(ds,"myTable); SqlCommandBuilder scb = new SqlCommandBuilder(adp);//假若,将ds绑定到DataGridView中 DataGridView1.DataSource = ds.Tables[0].DefaultView;//则新增、更改均能自动完成,表中设个主键 //删除的话,可加个 ContextMenuScript ,右键删除时,判断选中行集合不为空, //再从DataGridView中Remove选中行,使用代码,即可完成增删改的所有功能DataSet changeDs = ds.GetChanges(); if(changeDs != null) { adp.Update(ds); ds.AccepteChange(); }
try { con = new OleDbConnection(constr); con.Open(); OleDbCommand cmd = new OleDbCommand("Select St_CPID as 产品编号,St_CPName as 产品名称,St_CPAnquan as 安全存量 from TbStoreChanpinxinxi", con); OleDbDataAdapter da = new OleDbDataAdapter(); da.SelectCommand = cmd; OleDbCommandBuilder cbuild = new OleDbCommandBuilder(da); da.Update(dscpxx1, "TbStoreChanpinxinxi");//dscpxx1是自己在数据源类添加的DataSet生成的,似乎也可以是自定义的。 // dataGridView1.DataSource = dscpxx1.Tables["TbStoreChanpinxinxi"].DefaultView; // MessageBox.Show("更新成功"); con.Close(); con.Dispose(); cmd.Dispose(); da.Dispose(); dscpxx1.Dispose(); }
ADO.NET中的多数据表操作浅析
http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx
http://blog.csdn.net/zhzuo/archive/2004/08/06/67037.aspx
透过vs.net数据窗体向导看Ado.net
http://blog.csdn.net/zhzuo/archive/2005/01/03/238273.aspx
using System.Data.SqlClient;
using System.Data;//使用SqlServer数据库可自动实现更新,代码很简单
DataSet ds = new DataSet();
string sql = "select * from myTable";
string cnnStr = "server=.;uid=sa;pwd=;database=myDatabase";
SqlConnection cnn = new SqlConnection(cnnStr);
SqlDataAdapter adp = new SqlDataAdapter(sql,cnn);
adp.SelectCommand = new SqlCommand(sql,conn);
adp.Fill(ds,"myTable);
SqlCommandBuilder scb = new SqlCommandBuilder(adp);//假若,将ds绑定到DataGridView中
DataGridView1.DataSource = ds.Tables[0].DefaultView;//则新增、更改均能自动完成,表中设个主键
//删除的话,可加个 ContextMenuScript ,右键删除时,判断选中行集合不为空,
//再从DataGridView中Remove选中行,使用代码,即可完成增删改的所有功能DataSet changeDs = ds.GetChanges();
if(changeDs != null)
{
adp.Update(ds);
ds.AccepteChange();
}
{
con = new OleDbConnection(constr);
con.Open();
OleDbCommand cmd = new OleDbCommand("Select St_CPID as 产品编号,St_CPName as 产品名称,St_CPAnquan as 安全存量 from TbStoreChanpinxinxi", con);
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd;
OleDbCommandBuilder cbuild = new OleDbCommandBuilder(da);
da.Update(dscpxx1, "TbStoreChanpinxinxi");//dscpxx1是自己在数据源类添加的DataSet生成的,似乎也可以是自定义的。
// dataGridView1.DataSource = dscpxx1.Tables["TbStoreChanpinxinxi"].DefaultView;
// MessageBox.Show("更新成功");
con.Close();
con.Dispose();
cmd.Dispose();
da.Dispose();
dscpxx1.Dispose();
}