vb.net - 如何使用 Access 数据库删除 VB.net 中的记录?
问题描述
我是一个初学者,所以我按照 YouTube 上的教程并使用连接到 Access 数据库的 Windows 窗体在 VB.net 中制作了一个程序。该程序工作,它可以移动到上一条记录,下一条记录,添加新记录和保存。但是,删除按钮不起作用。
我尝试搜索解决方案,有人提到我需要在 Access 数据库中有一个主键,否则它不会创建删除命令。所以,我设置了一个主键然后运行程序,但删除仍然不起作用。
我读过我需要配置 TableAdapter 配置向导,但他们没有具体说明我应该做什么。我试着弄乱了一点,当我点击表适配器的属性时,我现在看到了一个 DeleteCommand。但是,我不确定如何处理它或如何使其工作。
这就是删除按钮的作用
Private Sub DeleteBtn_Click(sender As Object, e As EventArgs) Handles DeleteBtn.Click
PatientRecordsBindingSource.RemoveCurrent()
End Sub
这就是保存按钮的作用:
Private Sub SaveBtn_Click(sender As Object, e As EventArgs) Handles SaveBtn.Click
On Error GoTo SaveErr
PatientRecordsBindingSource.EndEdit()
PatientRecordsTableAdapter.Update(DatabaseDataSet.PatientRecords)
MessageBox.Show("Ok")
SaveErr:
Exit Sub
所以,我运行程序,我可以在表中添加和保存新记录。但是当我从表中选择一条记录然后单击删除按钮时,它只会删除程序上的记录。当我检查 Access 文件时,应该删除的记录仍然存在。但后来我再次运行程序,我试图删除的记录又回到了表中,就像什么都没发生一样。
编辑:我创建了一个新的 Access 数据库文件,确保我分配了一个主键,然后在新表单上尝试了它。它有效,但我仍然想知道我是否仍然可以解决旧表单的问题。
解决方案
推荐阅读
- javafx-2 - 如何在 JavaFX 中延迟任务的执行
- playframework - 多个 playframework 应用程序多次运行计划任务
- amcharts - How to set orientation for AMCharts Stockchart to vertical
- javascript - 我可以在 BigQuery UDF 中使用 JS BigInt 吗?
- node.js - Vue/Quasar, Webpack, 这些相关模块在 node_modules 中没有找到
- python - QStyleItemDelegate with Custom Buttons
- excel - 在给定 3 个条件下查找值的宏
- python - 将 WindowsPath 转换为字符串
- javascript - 试图在 GoogleScript 中重现 Excel“LEFT()”函数
- node.js - 测试路由并在其中存根函数调用?