新手求C# VS2010中dataGridView控件更改Access数据库MDB文件的实例

如题,现在dataGridView控件不能修改数据库内容,求实例,有的HI我,谢谢了。... 如题,现在dataGridView控件不能修改数据库内容,求实例,有的HI我,谢谢了。 展开
 我来答
创作者zUzVB1Sl31
推荐于2016-08-24 · 编程类资料、英语学习资料
创作者zUzVB1Sl31
采纳数:1331 获赞数:5974

向TA提问 私信TA
展开全部
懒得写,自己写过的,复制给你看一下:数据库连接语句我就省去了,下面是在Grid里修改语句后保存按钮的语句,修改后你要保存一下.
//保存修改数据按钮
private void button4_Click(object sender, EventArgs e)
{
//提示是否修改
#region//--------修改数据就将数据保存并显示
if (MessageBox.Show("是否保存数据?", "系统消息", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.OK)
{
#region ..........这里是保存数据代码
//结束编辑
dataGridView2.EndEdit();
//重新用表格数据填充数据容器
OleDbDataAdapter Ada = new OleDbDataAdapter();
DataTable table = (DataTable)dataGridView2.DataSource;
//重新启动连接
String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "/驱动.mdb";
//用Buider方法更新数据
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(table);
table.AcceptChanges();
MessageBox.Show("操作已成功!数据将全部被保存......", "系统消息", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
}
catch (System.Data.OleDb.OleDbException ex)
{
throw new Exception(ex.Message);
}
}
#endregion
}

#endregion
#region //--------不修改就初始化显示以前数据
else
{
MessageBox.Show("用户取消操作,数据将恢复到初始状态......");
OleDbConnection A = new OleDbConnection();
A.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "/驱动.mdb";
try
{
A.Open();
DataSet B = new DataSet();
string sqlStr = "Select * from 类别";
OleDbDataAdapter C = new OleDbDataAdapter(sqlStr, A);
C.Fill(B);
dataGridView2.DataSource = B.Tables[0];
}
catch (System.Data.OleDb.OleDbException ex)
{
throw new Exception(ex.Message);
}
finally
{
A.Close();
}
}
#endregion
}
潘多拉de情夫
2012-11-14 · TA获得超过247个赞
知道小有建树答主
回答量:572
采纳率:0%
帮助的人:348万
展开全部
需要在工程里引入你的MDB文件,如果不是,需要看一下你的MDB文件是不是只读
更多追问追答
追问
不是只读的,是我VS代码问题,每次.Update()都出问题
追答
你的工程里引用你的这个MDB文件了么
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gy93108083
2012-11-14 · TA获得超过283个赞
知道小有建树答主
回答量:665
采纳率:50%
帮助的人:268万
展开全部
你要绑定了数据源才能修改access里的数据呀~
更多追问追答
追问
我建立了一个本地的Data.mdb文件,修改dataGridView控件中的DataSouce属性指向我的数据表User,发现可以读取,但是修改时.Update()出现问题,没有办法之下,求实例。我需要知道流程跟方法。
追答
你是VS 直接绑定的数据源么?得看你如何绑定数据源的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式