vb.net 中datagridview内数据修改后保存代码怎么写

作者&投稿:拔莫 (若有异议请与网页底部的电邮联系)
vb.net 中datagridview内数据修改后保存代码怎么写~

Dim AccessString As String = "SELECT * FROM 示例表" Dim AccessConn As New OleDb.OleDbConnection(AccessConnectionString) AccessConn.Open() Dim AccessAdapter As OleDbDataAdapter = New OleDbDataAdapter(AccessString, AccessConn) Dim AccessCmdBulid As New OleDb.OleDbCommandBuilder(AccessAdapter) Try AccessAdapter.Update(DataGridView1.DataSource) Catch ex As Exception Console.WriteLine(ex.Message) MsgBox("数据保存失败" & vbCrLf & ex.Message.ToString, MsgBoxStyle.Critical) Finally AccessAdapter.Dispose() AccessCmdBulid.Dispose() End Try

首先将表读取到DataSet
用DataGridView绑定数据源
在 datagridview中直接修改字段的值后,用
SqlDataAdapter的Update方法更新
DataSet即可!

'--------下面是整个类代码-----------------------------------------------------------
Imports System.Data.OleDb
Public Class Form1
Dim ds As DataSet
Dim tb As DataTable
Dim ap As OleDbDataAdapter

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '手动显示
Me.DataGridView1.AllowUserToAddRows = False
tb = New DataTable
ap = New OleDbDataAdapter("select * from electic ", cn)'这里是SQL命令,Cn是数据库连接,修改成你的Conn
ap.Fill(tb)
Me.BindingSource1.DataSource = tb
Me.BindingNavigator1.BindingSource = Me.BindingSource1
Me.DataGridView1.DataSource = Me.BindingSource1
End Sub

Private Sub ToolStrip_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStrip_Save.Click '调用保存
Save_Data()
End Sub
Private Function Save_Data() As Boolean '保存数据库的操作
Try
Me.DataGridView1.EndEdit()
Me.BindingSource1.EndEdit()
Dim bd As New OleDbCommandBuilder(ap)
ap.UpdateCommand = bd.GetUpdateCommand
ap.Update(Me.BindingSource1.DataSource)
Return True
Catch ex As Exception
MsgBox(ex.Message)
Return False
End Try
End Function

Private Sub ToolStrip_Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStrip_Cancel.Click '撤销操作
Button1_Click(sender, e)
End Sub

以下是我现成的操作OLEDB数据库的,也就是Access2003那种,你自己修改成SQL的就可以用
首先在窗体上加DataGridView1,BindingSource1,BindingNavigator1,Button1控件各一个,然后在BindingNavigator1控件上增加一个按钮ToolStrip_Save
修改的关键是OleDbCommandBuilder(你自己把其改成SqlClient.SqlCommandBuilder)
'--------下面是整个类代码-----------------------------------------------------------
Imports System.Data.OleDb
Public Class Form1
Dim ds As DataSet
Dim tb As DataTable
Dim ap As OleDbDataAdapter

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '手动显示
Me.DataGridView1.AllowUserToAddRows = False
tb = New DataTable
ap = New OleDbDataAdapter("select * from electic ", cn)'这里是SQL命令,Cn是数据库连接,修改成你的Conn
ap.Fill(tb)
Me.BindingSource1.DataSource = tb
Me.BindingNavigator1.BindingSource = Me.BindingSource1
Me.DataGridView1.DataSource = Me.BindingSource1
End Sub

Private Sub ToolStrip_Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStrip_Save.Click '调用保存
Save_Data()
End Sub
Private Function Save_Data() As Boolean '保存数据库的操作
Try
Me.DataGridView1.EndEdit()
Me.BindingSource1.EndEdit()
Dim bd As New OleDbCommandBuilder(ap)
ap.UpdateCommand = bd.GetUpdateCommand
ap.Update(Me.BindingSource1.DataSource)
Return True
Catch ex As Exception
MsgBox(ex.Message)
Return False
End Try
End Function

Private Sub ToolStrip_Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStrip_Cancel.Click '撤销操作
Button1_Click(sender, e)
End Sub

你用的哪种方法


乌马河区18547741042: 如何在VB.net中添加AxAdodc与DataGrid控件? -
郯琛胎盘: 打开一个工程,然后右击工具栏任意位置,右键选择“选择项……(Choose Items……)”,然后找到DataGrid和AxAdodc即可——

乌马河区18547741042: vb.net datagritview用法 -
郯琛胎盘: Private Sub DataGridView1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles DataGridView1.MouseMove If (e.Button = Windows.Forms.MouseButtons.Left) Then '判断是否鼠标左键 Dim ...

乌马河区18547741042: 求VB.net datagrid 控件的使用方法(入门级) -
郯琛胎盘: Dim tab1 As String Dim DS As New DataSet Dim SqlStr As String Dim DTS_A As New DataGridTableStyle Dim Col_A1, Col_A2, Col_A3 As New DataGridTextBoxColumn Dim Col_bo As New DataGridBoolColumn 'DS.Tables("tab1")....

乌马河区18547741042: vb.net datagrid 用法 -
郯琛胎盘: 你说的应该是一个datagridview吧?实在抱歉,vb.net接触的少,不过在.net中很多做法都是一样的.datagridview有一个事件叫CellValueChanged,不知道你能不能找到?完整的事件定义如下(我这个地方控件命名为DataGridView1:Private Sub ...

乌马河区18547741042: VB中用 DataGrid做查询 -
郯琛胎盘: :给你个例子(请理论联系实际一下):Private Sub Command4_Click() '显示数据 Set Rs4 = New ADODB.Recordset Dim sSQL As String Dim J As Integer DT1 = Format(Trim(D1.Value), "yyyy-mm-dd") DT2 = Format(Trim(D2.Value), "...

乌马河区18547741042: 请高手讲下vb中的DataGrid控件 -
郯琛胎盘: 在三种控件当中,DataGrid是迄今为止功能最为丰富的,但也是最不灵活的控件.这种在输出HTML时不够灵活的特点是因为它最初就是被设计成以表格的形式输出数据.每一条记录输出时会建立一对<tr>标签,而每个字段的值输出时则建立一...

乌马河区18547741042: VB.NET中DataGridView控件怎么使用 -
郯琛胎盘: DataGridViewInfo.AutoResizeRows() 应该这句有问题,后面应该是绑定好像是binder

乌马河区18547741042: 如何在vb中添加datagrid控件 -
郯琛胎盘: 在工具箱空白处点右键,选部件,在控件列表中找到它,然后打钩后确定,全名是Mircosoft dataGrid control...

乌马河区18547741042: 怎么在VB中添加datagridview控件 -
郯琛胎盘: VB6里,类似的控件叫 datagrid控件,需要通过菜单 [工程] -- [部件],勾选 Microdoft DataGrid Control 6.0 (SP6),完成添加到控件工具箱.VB利用DataGrid控件显示数据库中数据信息,DataGrid在数据库数据显示的时候非常重要,它在用户操作...

乌马河区18547741042: 如何在vb.net的datagridview中实现删除、添加、修改数据 -
郯琛胎盘: 有这么复杂吗? 首先定义一个datatableDim dt As DataTable = DataGridView1.DataSource '删除 dt.Rows(i).Delete()'//i就是要删除的序号 '添加Dim nr As DataRow = dt.NewRownr.Item(i) = "kfkfk"'通过修改i(即列序列号)设置nr dt.rows.add(nr)'查找 自己查询sql的方法,很简单的. datagridview的操作最好是在datatable里面

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网