首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

批改DATADIRDVIEW中的记录更新至access

2014-01-22 
修改DATADIRDVIEW中的记录更新至accessPublic Class user_inforPrivate Mcon As OleDbConnection Nothin

修改DATADIRDVIEW中的记录更新至access
Public Class user_infor
    Private Mcon As OleDbConnection = Nothing
    Private Adapter As OleDbDataAdapter = Nothing
    Private Mcom As OleDbCommand = Nothing
    Private Table As DataTable
    Private Sub user_infor_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    End Sub
    Private Sub user_query_btn_Click(sender As Object, e As EventArgs) Handles user_query_btn.Click
        Try
            Mcon = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=cx.mdb")
            Mcon.Open()
            Adapter = New OleDbDataAdapter
            Mcom = New OleDbCommand
            Mcom.Connection = Mcon
            Mcom.CommandType = CommandType.Text
            Mcom.CommandText = "Select * from [user]"
            Adapter.SelectCommand = Mcom
            '创建一个DataTable对象,存放从数据库中取出来的数据
            Table = New DataTable
            Adapter.Fill(Table)
            user_dgv.DataSource = Table
            '显示信息
            MsgBox("数据已取回,共" & Table.Rows.Count & "条")
        Catch ex As Exception
            '显示出错信息
            MsgBox(ex.Message)
        End Try
    End Sub
    Private Sub user_modify_btn_Click(sender As Object, e As EventArgs) Handles user_modify_btn.Click
        Dim CB As OleDbCommandBuilder
        'If CB Is Nothing Then
        Dim tempDT As DataTable
        tempDT = Table.GetChanges()
        'MsgBox(Table.GetChanges.ToString)
        If tempDT Is Nothing Then
            MsgBox("数据未修改。")
            Exit Sub
        End If
        CB = New OleDbCommandBuilder
        CB.DataAdapter = Adapter
        Adapter.UpdateCommand = CB.GetUpdateCommand
        Adapter.InsertCommand = CB.GetInsertCommand
        Adapter.DeleteCommand = CB.GetDeleteCommand
        'End If
        '将更改保存到数据库中
        Adapter.Update(Table)
        MsgBox("数据已更新")
    End Sub
对datagirdview中的记录进行修改、删除、添加,然后跟新至access中, Adapter.Update(Table)提示出错

[解决办法]
好吧,我也算是长知识了。
CB = New OleDbCommandBuilder(Adapter)
这句下面添加
CB.QuotePrefix = "["
CB.QuoteSuffix = "]"

就能搞定了。

热点排行