以下是一个网友的问题,我也遇到了,记得在 更新前  Me.Contract_DesDA.Update(Me.ds.Tables("合同内容列表"))
要 Dim cb As OleDbCommandBuilder = New OleDbCommandBuilder(Contract_DesDA)

经测试,数据库定义了主键,在ds里面没必要像下文再定义了

~~~~~~~~~~~~~~~~~~

运行时,在datagridview中修改数据,然后点击Button1,预期结果:更新数据到Access,实际结果:提示"当传递具有已修改行的DataRow集合时,更新要求有效的UpdateCommand"

另外说明一下:1 使用的是Access 2003  2.tContract_Des这张表中已经设置主键了。

代码补齐如下:
======================================
Option  Strict  On
Imports  System.Data.OleDb

Public  Class  Form1
        Private  ds  As  New  DataSet    '  数据集对象的类别层级建立
        Private  cnnStringBuilder  As  New  OleDbConnectionStringBuilder()      '  利用  OleDbConnectionStringBuilder  对象来构建连接字符串。
        Private  cn  As  OleDbConnection
        Private  Contract_DesDA  As  OleDbDataAdapter
        Private  cmContract_Des  As  String

Private  Sub  Form1_Load(ByVal  sender  As  System.Object,  ByVal  e  As  System.EventArgs)  Handles  MyBase.Load
                cnnStringBuilder.DataSource  =  "F:\外贸\test.mdb"
                cnnStringBuilder.Provider  =  "Microsoft.Jet.OLEDB.4.0"

cmContract_Des  =  "SELECT  *  FROM  tContract_Des"                                 
                cn  =  New  OleDbConnection(cnnStringBuilder.ConnectionString)
                Contract_DesDA  =  New  OleDbDataAdapter(cmContract_Des,  cn)
                Contract_DesDA.Fill(ds,  "合同内容列表")
               
                Dim myPIColArray(1) As DataColumn                                       
                myPIColArray(0) = ds.Tables("合同内容列表").Columns("Contract_Des_ID")
                ds.Tables("合同内容列表").PrimaryKey = myPIColArray

Me.BindingSource1.DataSource  =  ds.Tables("合同内容列表")
                Me.DataGridView1.DataSource  =  Me.BindingSource1

End  Sub

Private Sub btnUpdate_Click(ByVal  sender  As  System.Object,  ByVal  e  As  System.EventArgs)  Handles  Button1.Click
            Dim cb As OleDbCommandBuilder = New OleDbCommandBuilder(Contract_DesDA)
              Me.Contract_DesDA.Update(Me.ds.Tables("合同内容列表"))
        End  Sub
End  Class

http://topic.csdn.net/u/20071209/15/d9b0ddc9-de7b-40c7-ae58-7a7a584a28a2.html
======================================

转载于:https://www.cnblogs.com/yzy666/archive/2010/02/25/1673785.html

datagridview当传递具有已修改行的 DataRow 集合时,更新要求有效的 UpdateCommand。相关推荐

  1. Tabulator javascript data grid数据表格控件检测已修改行数据

    Tabulator 可以通过table.getEditedCells()获得编辑修改过的单元格,在通过单元格的getRow()函数获得行对象,让后通过行对象的.getData()函数获得编辑修改过行数 ...

  2. HDU 2152 选课时间(题目已修改,注意读题) (母函数)

    选课时间(题目已修改,注意读题) Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  3. HDU-2079 选课时间(题目已修改,注意读题) -母函数

    选课时间(题目已修改,注意读题) Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  4. 48道C语言上机题参考答案,二级C语言上机题库参考答案(已修改).doc

    二级C语言上机题库参考答案(已修改).doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印 ...

  5. 怎么回事儿?C#错误:集合已修改;枚举操作可能无法执行。

    本意是遍历表的行,当行中"主键"列为""时,将该行从表中删除.执行时就出现了"集合已修改:枚举操作可能无法执行."的c#错误提示.c#错误代 ...

  6. C# DataGridView控件动态添加新行

    目录 方法一: 方法二: ① DataGridView 取得或者修改当前单元格的内容: ② DataGridView 设定单元格只读: ③ DataGridView 不显示最下面的新行: ④ Data ...

  7. pandas使用itertuples函数迭代dataframe中的数据行并自定义修改行中的数值(update row while iterating over the rows)

    pandas使用itertuples函数迭代dataframe中的数据行并自定义修改行中的数值(update row while iterating over the rows in datafram ...

  8. 集合已修改;可能无法执行枚举操作。

    问题描述:在用foreach遍历hashtable的时候,弹出"集合已修改:可能无法执行枚举操作." 问题代码: private void Check(int TimeOut)   ...

  9. sublime自定义主题-修改行号的颜色

    打开以下链接: http://tmtheme-editor.herokuapp.com/#!/editor/theme/Cobalt 找到自己当前使用的主题,然后点击页面最下方的+号即可. 中間的下方 ...

最新文章

  1. 通过python利用哈希值实现比较两个文件的一致性
  2. windows server2008 双线接入设置(电信联通双线)
  3. maven构建SSM工程[应用]1
  4. python好学-所有人都说Python 简单易学,为何你觉得难?
  5. KVM的客户机可以使用的存储
  6. MATLAB AWGN信道 M-ary PSK 误码性能
  7. 数据库SQL语句 使用DML语言 插入数据
  8. word文档查重_「毕业之家」揭秘:大学生知网论文查重的规则及查重原理
  9. 数据分析与挖掘理论-数据预处理
  10. qsort与sort
  11. java biginteger使用_在Java中使用BigInteger值
  12. 人脸识别的前世今生:从人工特征的百花齐放到深度学习的一统江湖
  13. TransR:实体和关系分开嵌入(知识图谱嵌入)2015 AAAI
  14. 使用TortoiseSVN下载SourceForge.net上的代码
  15. Android学习笔记---16_采用SharedPreferences保存用户偏好设置参数
  16. VALSE学习(三):深度学习梯度讲解
  17. 图神经网络初探:build a simple graph nets
  18. (2)从文件中解析JSON数据
  19. 关于optisystem中的变量解析
  20. lwj_C#_集合stack栈和queue队列

热门文章

  1. 网络和计算机管理制度,网络和计算机使用管理制度
  2. php代码怎么复制_PHP_PHP网站备份程序代码分享,效果图:PHP代码 复制代码 代码 - phpStudy...
  3. java恶作剧小程序_一个Java恶搞小程序
  4. 5u fb库 三菱plc_三菱FX5U PLC入门必备基础知识特点
  5. 075_JSON.parse()
  6. python安装包_在python官网打不开的情况下获取获取官方最新安装包
  7. ffmpeg-win32-v3.2.4 下载_iTools下载|iTools 4.4.3.4 官方中文版
  8. php代码冗余度检查插件,冗余代码检测与处理使用什么工具
  9. easyui js解析字符串_easyui的解析器Parser
  10. linux arm 常用服务,ARM、linux常用服务器+交叉编译工具链