求救!c#datagridview已绑定ACCESS数据库,现在对datagridview中数据进行更改,通过保存按钮更新到数据库!

问题描述

如题。这是按钮代码privatevoidbutton2_Click(objectsender,EventArgse){if(MessageBox.Show("是否保存数据?","系统消息",MessageBoxButtons.OKCancel,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2)==DialogResult.OK){dataGridView1.EndEdit();//重新用表格数据填充数据容器OleDbDataAdapterAda=newOleDbDataAdapter();DataTabletable=(DataTable)dataGridView1.DataSource;DataTabledt=newDataTable();for(intcount=0;count<dataGridView1.Columns.Count;count++){DataColumndc=newDataColumn(dataGridView1.Columns[count].Name.ToString());dt.Columns.Add(dc);}for(intcount=0;count<dataGridView1.Rows.Count;count++){DataRowdr=dt.NewRow();for(intcountsub=0;countsub<dataGridView1.Columns.Count;countsub++){dr[countsub]=Convert.ToString(dataGridView1.Rows[count].Cells[countsub].Value);}dt.Rows.Add(dr);}//重新启动连接StringConnectionString="Provider=Microsoft.ACE.OLEDB.12.0;DataSource="+System.Windows.Forms.Application.StartupPath+"/Database11.accdb";//用Buider方法更新数据using(OleDbConnectionconnection=newOleDbConnection(ConnectionString)){Ada.SelectCommand=newOleDbCommand("SELECT*FROM栏舍",connection);OleDbCommandBuilderbuilder=newOleDbCommandBuilder(Ada);Ada.UpdateCommand=builder.GetUpdateCommand();try{//更新数据表数据时Ada.Update(dt);dt.AcceptChanges();MessageBox.Show("操作已成功!数据将全部被保存......","系统消息",MessageBoxButtons.OK,MessageBoxIcon.Information,MessageBoxDefaultButton.Button2);}catch(System.Data.OleDb.OleDbExceptionex){thrownewException(ex.Message);}}}}

运行后出现请教各位大神该如何解决!

解决方案

解决方案二:
小弟最近刚刚接触这些东西不是很懂还请大神们多多指导啊
解决方案三:
求帮助啊!!
解决方案四:
首先你得保证代码都是正确的,不要胡乱东抄一点,西抄一点的拼凑其次,dt里必须有全部的列,尤其是必须要有主键,而且dt里的列名必须和数据库里的一致,不能重命名

时间: 2025-01-26 08:51:27

求救!c#datagridview已绑定ACCESS数据库,现在对datagridview中数据进行更改,通过保存按钮更新到数据库!的相关文章

mysqlcommandbuilder-mysql中修改参数保存到datatable再更新到数据库出现问题

问题描述 mysql中修改参数保存到datatable再更新到数据库出现问题 这里我使用mysqlcommandbuilder实现这一功能这样使用正确吗,有什么其他好的建议 解决方案 用不着什么command builder,你的问题是你的hardwareparameter_delectcommand没有值.你怎么写的.你直接用 MySQLCommand cmd = new MySQLCommand(sql) 解决方案二: 产生异常了.你填充的参数是不是不正确

vb datagridview已连接access后遇到的存储问题,求解决~

问题描述 在使用vs2013-vb窗体应用编写某列表的时候.用到datagridview控件,现已将datagridview链接access数据库,且可建立正常操作.遇到的问题是,在datagridview控件上已显示添加了的项目没有同步到access数据库中.现想在关闭窗体时,将当前的信息保存到access(mdb)中,应该怎样做?可能没说清楚哈,就是在每次关闭窗体之后,加入数据库的东西并没有保存,重新启动程序,数据库又是空白.我在添加到数据库的操作代码是:PlaylistDataSet.表1

datagridview中的第一行数据数据无法更新到数据库

问题描述 请大家帮忙解决一个困扰我许久的问题:我用VS2010+SQL2005做一个小型学校成绩系统,其中一个窗体用来自动生成考号,我用datagridview显示班级学生,用一个"自动生成考号"按钮生成考号,按下该按钮后datagridview中显示生成的考号是正常的,然后用保存按钮更新到数据库时第一行的考号不能正常更新,但有时能正常更新,不知是什么原因,请大家帮帮忙!相关代码大致如下:publicboolsaveStu()//保存对学生表的修改{formWaitwait=newfo

完美解决ASP 不能更新。数据库或对象为只读。[原创]_ASP基础

最近帮别人处理下数据,发现添加数据时,就提示"ASP 不能更新.数据库或对象为只读.",从网上找了,也没有解决我的问题.1.服务器的数据目录mdb文件所在的目录,是只读的2.数据库在本地的权限,去只读权限,再上传3.有可能你是从只读目录移动到可读目录的,所以一定不能这么用,先下到本地,再上传,可解决此类问题.www.jb51.net "不能更新,数据库或对象为只读"的解决方案 初接触dreamweaver,在做一简单页面实现向access数据库写数据时,总是遇到这样

完美解决ASP 不能更新。数据库或对象为只读。 原创

最近帮别人处理下数据,发现添加数据时,就提示"ASP 不能更新.数据库或对象为只读.",从网上找了,也没有解决我的问题. 1.服务器的数据目录mdb文件所在的目录,是只读的 2.数据库在本地的权限,去只读权限,再上传 3.有可能你是从只读目录移动到可读目录的,所以一定不能这么用,先下到本地,再上传,可解决此类问题.www.jb51.net "不能更新,数据库或对象为只读"的解决方案 初接触dreamweaver,在做一简单页面实现向access数据库写数据时,总是遇

用C#在datagridview中显示access数据库一张表中的内容,但是列的显示乱了

问题描述 用C#在datagridview中显示access数据库一张表中的内容,但是列的显示乱了 ACCESS数据库表中列的顺序是1左,2左,11左,12左,1右,2右,11右,12右,但是当显示在datagridview中时就呈现上面的乱码, 解决方案 这是一个bug 试试看:http://blog.csdn.net/lukesunch/article/details/4644101 再不行就不要绑定,手工循环添加.

access数据库-c1chart控件绑定 access 数据库

问题描述 c1chart控件绑定 access 数据库 我在做一个项目,用到了c1chart这个控件,在一个图上画出3条折线,现在的问题是一条折线的数据我可以从数据库读取,可是3条折线的数据怎样读呢,1条折线的数据对应1天,

asp.net datalist 绑定access数据库方法

asp教程.net datalist 绑定access数据库教程方法 <%@ page language="vb" %> <!doctype html public "-//w3c//dtd xhtml 1.1//en" "http://www.w3.org/tr/xhtml11/dtd/xhtml11.dtd"> <script runat="server"> </script>

vb2010-VB2010,textbox绑定access

问题描述 VB2010,textbox绑定access 各位老师: VB2010,ACCESS数据库已连接,有一个TEXTBOX1,绑定数据库成功 TextBox1.DataBindings.Add("text", Dst.Tables("gszlb"), "公司名") 'DST是dataset,gszlb是表名,公司名是字段. 也能显示数据内容. 但怎么做到修乐TEXTBOX1的值,数据库中的数据也跟着修改?比如这边一按Button1,数据库就