怎么才能把把dataset更新到数据库?
我已经定义了一个dataset,dataadapter了dataset中的数据页已经修改了,我怎么才能把dataset中的修改反应到数据库中呢?我这样做了,DataAda...
我已经定义了一个dataset,dataadapter了
dataset中的数据页已经修改了,我怎么才能把dataset中的修改反应到数据库中呢?
我这样做了,
DataAdapter myda=new DataAdaper();
myda.update(ds,“Table”);
可是不好使,不知道是为什么? 展开
dataset中的数据页已经修改了,我怎么才能把dataset中的修改反应到数据库中呢?
我这样做了,
DataAdapter myda=new DataAdaper();
myda.update(ds,“Table”);
可是不好使,不知道是为什么? 展开
展开全部
//用DataSet更新数据库
protected void md(int id, string fild, string value)
{
//int id 要更新数据的ID,fild要更新的字段,value更新后的值
string strSQL = "SELECT * FROM i_user where uid="+id;
OleDbDataAdapter myODA = new OleDbDataAdapter(strSQL, DataAccess.GetStrConn());
OleDbCommandBuilder myCommandBuilder = new OleDbCommandBuilder(myODA);
DataSet myDS = new DataSet();
myODA.FillSchema(myDS, SchemaType.Source, "i_user");
myODA.Fill(myDS, "i_user");
DataTable tbl = myDS.Tables[0];
tbl.PrimaryKey = new DataColumn[] { tbl.Columns["uid"] };
DataRow myRow = tbl.Rows.Find(id);
myRow[fild] = value; //如果要更新多个字段,就在这里加吧
myODA.Update(myDS, "i_user");
myDS.AcceptChanges();
Label1.Text = myDS.Tables["i_user"].Rows[0].ToString();
this.ld();
}
//绑定到GridView上
protected void ld()
{
GridView1.PageIndex = 1;
GridView1.DataSource = DataAccess.dataSet("SELECT uid,uname FROM i_user order by uid desc");
this.GridView1.DataBind();
}
protected void md(int id, string fild, string value)
{
//int id 要更新数据的ID,fild要更新的字段,value更新后的值
string strSQL = "SELECT * FROM i_user where uid="+id;
OleDbDataAdapter myODA = new OleDbDataAdapter(strSQL, DataAccess.GetStrConn());
OleDbCommandBuilder myCommandBuilder = new OleDbCommandBuilder(myODA);
DataSet myDS = new DataSet();
myODA.FillSchema(myDS, SchemaType.Source, "i_user");
myODA.Fill(myDS, "i_user");
DataTable tbl = myDS.Tables[0];
tbl.PrimaryKey = new DataColumn[] { tbl.Columns["uid"] };
DataRow myRow = tbl.Rows.Find(id);
myRow[fild] = value; //如果要更新多个字段,就在这里加吧
myODA.Update(myDS, "i_user");
myDS.AcceptChanges();
Label1.Text = myDS.Tables["i_user"].Rows[0].ToString();
this.ld();
}
//绑定到GridView上
protected void ld()
{
GridView1.PageIndex = 1;
GridView1.DataSource = DataAccess.dataSet("SELECT uid,uname FROM i_user order by uid desc");
this.GridView1.DataBind();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询