Public Class Form1
Dim SqlConn As OleDbConnection
Dim SqlUse1 As OleDbDataAdapter
Dim Dt1 As DataTable
'绑定数据库,显示DGV中
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
SqlConn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Schedule Tool\Tool\Projects_Schedule_Database.accdb")
SqlUse1 = New OleDbDataAdapter("SELECT * FROM China_Projects", SqlConn)
Dt1 = New DataTable
SqlUse1.Fill(Dt1)
DataGridView1.DataSource = Dt1.DefaultView
End Sub
'更新数据库
Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click
Dim OleCb1 As New OleDbCommandBuilder(SqlUse1)
OleCb1.QuotePrefix = "["
OleCb1.QuoteSuffix = "]"
SqlUse1.UpdateCommand = OleCb1.GetUpdateCommand()
SqlUse1.Update(Dt1)
Dt1.AcceptChanges() '此处是否可省略?
MsgBox("Done")
End Sub
End class
''问题,手动更改DGV中的单元格后,点击Button数据库可以更新。但通过控件如Textbox写入的字符串(这里指控件写入DGV单元格中)无法更新数据库字段.
''描述1,此数据库中有三张table
''描述2,确定每张表格都有主键
''描述3,若是在DGV中新增加的行(行内有内容),数据库可以保存更新
''描述4,多次保存后(n>4),提示(“违反并发:Updatecommand 影响了预期...”)
''请帮忙指正,谢谢
VB.NET Access数据库更新问题,请帮忙指正!
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- Pandy_PB 2021-03-01 16:54关注
Public Class Form1 Dim SqlConn As OleDbConnection Dim SqlUse1 As OleDbDataAdapter Dim Dt1 As DataTable '绑定数据库,显示DGV中 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load SqlConn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Schedule Tool\Tool\Projects_Schedule_Database.accdb") SqlUse1 = New OleDbDataAdapter("SELECT * FROM China_Projects", SqlConn) Dt1 = New DataTable SqlUse1.Fill(Dt1) DataGridView1.DataSource = Dt1.DefaultView End Sub '更新数据库 Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click Dim OleCb1 As New OleDbCommandBuilder(SqlUse1) OleCb1.QuotePrefix = "[" OleCb1.QuoteSuffix = "]" DataGridView1.CurrentCell = Nothing '个人疏忽(增加此行代码),问题解决。因DGV中单元格在编辑中,此处没有退出。 结贴 SqlUse1.UpdateCommand = OleCb1.GetUpdateCommand() SqlUse1.Update(Dt1) Dt1.AcceptChanges() MsgBox("Done") End Sub End class
解决 无用评论 打赏 举报
悬赏问题
- ¥15 Arcgis相交分析无法绘制一个或多个图形
- ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
- ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
- ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
- ¥30 3天&7天&&15天&销量如何统计同一行
- ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
- ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
- ¥15 vs2019中数据导出问题
- ¥20 云服务Linux系统TCP-MSS值修改?
- ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)