日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

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

發布時間:2025/4/16 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 datagridview当传递具有已修改行的 DataRow 集合时,更新要求有效的 UpdateCommand。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

以下是一個網友的問題,我也遇到了,記得在?更新前? 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。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。