c# - 数据库中的数据不会显示在 DataGridView [VB.NET] 中
问题描述
我们的任务是为我们的编程主题制作一个记录保存系统,因此我们正在为一家小型卡车公司制作一个系统,我的用户(协调员)应该能够查看他/她在数据库中输入的信息。在我的 View Reports 表单中,有一个 DataGridView 输入的数据应该出现在其中,但是每当我运行它时,DataGridView 什么都不显示,甚至数据库中的列名也不显示,就像我从工具箱中添加了一个新的 DataGridView 一样。
这是我在 DataGridView 中的代码:
Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs)
Dim conn As New
MySqlConnection("server=localhost;userid=root;password=4444;database=database")
Dim table As New DataTable()
Dim adapter As New MySqlDataAdapter("select * from truck_info", conn)
adapter.Fill(table)
DataGridView1.DataSource = table
End Sub
解决方案
我只想在出色的评论中添加一件事。数据库对象需要关闭和处置。`Using...End Using 块会处理这个问题,即使有错误。
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim table As New DataTable()
Using conn As New MySqlConnection("server=localhost;userid=root;password=4444;database=database")
Using cmd As New MySqlCommand("select * from truck_info", conn)
conn.Open()
table.Load(cmd.ExecuteReader)
End Using
End Using
DataGridView1.DataSource = table
End Sub
推荐阅读
- database - 在MongoDB中同步执行两个函数
- c# - 为什么我的电子邮件确认令牌无效?
- sqlplus - 使用 SQLPlus 时有什么方法可以获取 SQL 语句的语法?
- react-native - React Navigation 嵌套抽屉菜单
- mysql - 数据框的类型为“无类型”。我应该如何改变它以允许合并功能运行?
- python - 批量读取 mysql 最终会命中所有行
- excel - 需要删除或隐藏显示空白的行。但是里面有公式
- jquery - 如何获取 Ajax 内容以引导 4 工具提示?
- r - 如何将每个单元格包含多个分隔记录的数据“解压”为长格式
- flutter - Flutter 应用程序的大小比 Play Console 所说的要大得多