c# 数据源dataset更新数据库的问题。。求大神。

lz8399 2014-06-01 11:52:16
我在界面,用DataBingings,把数据从数据源(根据access数据生成的)中绑定到控件中,然后也实现了数据的修改新建,还有保存,可是在后来才发现数据只是保存在temp2DataSet中。
我想保存到access数据库中啊,怎么办?

private void 保存SToolStripButton_Click(object sender, EventArgs e)
{
this.Validate();
this.送电BindingSource.EndEdit();
//this._01送电TableAdapter.Delete=this.temp2DataSet.
this._01送电TableAdapter.Update(this.temp2DataSet._01送电);
}
还有就是如何查询、导入这个dataset。。。
...全文
435 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 7 楼 wind_cloud2011 的回复:
行阿[/quote] 私信已发送,请查收!
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 11 楼 wind_cloud2011 的回复:
[quote=引用 11 楼 wind_cloud2011 的回复:] [quote=引用 9 楼 lz8399 的回复:] [quote=引用 7 楼 wind_cloud2011 的回复:]
我是初学者,会的不多。 我按照你给的改正了。 这个tempdataset是自动生成的,是在txtbox用bingingsource之后,自动生成的,所以就现在更新是个问题了。 还有就是那个数据源和数据库的问题,我很不懂,请问您可不可以帮我看下?[/quote] 行阿[/quote] 我给你发私信吧?
wind_cloud2011 2014-06-01
  • 打赏
  • 举报
回复
引用 9 楼 lz8399 的回复:
[quote=引用 7 楼 wind_cloud2011 的回复:]
我是初学者,会的不多。 我按照你给的改正了。 这个tempdataset是自动生成的,是在txtbox用bingingsource之后,自动生成的,所以就现在更新是个问题了。 还有就是那个数据源和数据库的问题,我很不懂,请问您可不可以帮我看下?[/quote] 行阿
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 8 楼 zanfeng 的回复:
前段时间以前同事在他们公司搞培训问我要一本书。你可以看看。 “DataTable,DataView和DataGrid中一些容易混淆的概念.pdf”名字是这个。你可以网上搜搜下载地址。
大神啊,我是最近和老师做一个东西才做c#,初学者。会的不多,这一个错误就很费脑力。 我懂得不多。代码都粘出来了,你看下能不能详细下,非常谢谢了!!!
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 7 楼 wind_cloud2011 的回复:
我是初学者,会的不多。 我按照你给的改正了。 这个tempdataset是自动生成的,是在txtbox用bingingsource之后,自动生成的,所以就现在更新是个问题了。 还有就是那个数据源和数据库的问题,我很不懂,请问您可不可以帮我看下?
足球中国 2014-06-01
  • 打赏
  • 举报
回复
前段时间以前同事在他们公司搞培训问我要一本书。你可以看看。 “DataTable,DataView和DataGrid中一些容易混淆的概念.pdf”名字是这个。你可以网上搜搜下载地址。
wind_cloud2011 2014-06-01
  • 打赏
  • 举报
回复
1,这是读取数据库内容到 dataGridView1 string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=st.mdb"; OleDbConnection conn = new OleDbConnection(strConn); string strsql = ""; DataSet ds = new DataSet(); strsql = "select * from 考生"; OleDbDataAdapter da = new OleDbDataAdapter(strsql , strConn); da.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; 2,你修改 dataGridView1中的内容: 3. 将修改后的 dataGridView1内容更新到原数据库中 private void button2_Click(object sender, EventArgs e) { DataTable dt = (DataTable)dataGridView1.DataSource; update(dt); }
足球中国 2014-06-01
  • 打赏
  • 举报
回复
这样写代码的不多了。都直接三层啥的。 更新不成功,大多数的情况下都是行状态不正确。或者行里面的值与数据里面的值有对应不上的。 你可以调试的监视一下行状态。有一个函数好象 GetChanges 可以查看哪些变动。 在调用update前不要调accptechanged。
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 4 楼 wind_cloud2011 的回复:
你要先将数据写入到temp2DataSet中,再用 update(temp2DataSet.Tables[0]); 更新到你的数据库中,就是这样
那个tempdataset是导入access后自动生成的,然后我调用了,有和没有update都一样子。
wind_cloud2011 2014-06-01
  • 打赏
  • 举报
回复
你要先将数据写入到temp2DataSet中,再用 update(temp2DataSet.Tables[0]); 更新到你的数据库中,就是这样
lz8399 2014-06-01
  • 打赏
  • 举报
回复
引用 2 楼 wind_cloud2011 的回复:
public void update(DataTable dt) { OleDbDataAdapter Ada = new OleDbDataAdapter(); String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "\\st.mdb"; using (OleDbConnection connection = new OleDbConnection(ConnectionString)) { Ada.SelectCommand = new OleDbCommand("SELECT * FROM 考生", connection); OleDbCommandBuilder builder = new OleDbCommandBuilder(Ada); Ada.UpdateCommand = builder.GetUpdateCommand(); try { //更新数据表数据时 Ada.Update(dt); dt.AcceptChanges(); } catch { } } } 调用 : update(temp2DataSet..Tables[0]);
不行的,还是数据库一点没有变化,程序关闭又打开之后又是之前的样子。
wind_cloud2011 2014-06-01
  • 打赏
  • 举报
回复
public void update(DataTable dt) { OleDbDataAdapter Ada = new OleDbDataAdapter(); String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "\\st.mdb"; using (OleDbConnection connection = new OleDbConnection(ConnectionString)) { Ada.SelectCommand = new OleDbCommand("SELECT * FROM 考生", connection); OleDbCommandBuilder builder = new OleDbCommandBuilder(Ada); Ada.UpdateCommand = builder.GetUpdateCommand(); try { //更新数据表数据时 Ada.Update(dt); dt.AcceptChanges(); } catch { } } } 调用 : update(temp2DataSet..Tables[0]);

110,623

社区成员

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

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

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