Vb.net未将access数据库加载到datagridview

Vb.net未将access数据库加载到datagridview,vb.net,Vb.net,我不明白为什么Access数据库不能为我加载到DataGridView中。我的代码中没有错误,所以我不确定到底发生了什么。我得到的唯一错误是没有声明configuration元素 导入System.Data.OleDb 公开课表格1 Dim conn作为新的OLEDB连接 私有子表单1_Load(发送方作为对象,e作为事件参数)处理MyBase.Load Dim objConn As String=“Provider=Microsoft.ACE.OLEDB.12.0;数据源=Students.a

我不明白为什么Access数据库不能为我加载到DataGridView中。我的代码中没有错误,所以我不确定到底发生了什么。我得到的唯一错误是没有声明configuration元素

导入System.Data.OleDb
公开课表格1
Dim conn作为新的OLEDB连接
私有子表单1_Load(发送方作为对象,e作为事件参数)处理MyBase.Load
Dim objConn As String=“Provider=Microsoft.ACE.OLEDB.12.0;数据源=Students.accdb”
康涅狄格州公开赛
dataGridShow()
端接头
私有子dataGridShow()
Dim objDS作为新数据集
Dim objDT作为新数据表
objDS.Tables.Add(objDT)
Dim objDA作为新的OleDb.OleDbDataAdapter
objDA=新的OleDbDataAdapter(“从学生中选择*”,康涅狄格州)
objDA.Fill(objDT)
DataGridView1.DataSource=objDT.DefaultView
康涅狄格州关闭
端接头
末级
我的应用程序配置如下所示。我的数据库位于bin/Debug中


您不需要打开和关闭连接。DataAdapter会为您执行此操作。如果没有有效的连接字符串,您的连接将永远无法工作,因此我将您的连接字符串移动到dataGridShow过程,并设置conn对象的ConnectionString属性

Private conn As New OleDbConnection

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        dataGridShow()
    End Sub

    Private Sub dataGridShow()
        Dim objDS As New DataSet
        Dim objDT As New DataTable
        objDS.Tables.Add(objDT)
        Dim objConn As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = Students.accdb"
        conn.ConnectionString = objConn
        Dim objDA As New OleDb.OleDbDataAdapter("SELECT * FROM Students", conn)
        objDA.Fill(objDT)
        DataGridView1.DataSource = objDT.DefaultView
    End Sub

不要使用加载事件。将该代码放入构造函数中。不要让你的连接像那样打开。将一次性物品放入using endusing块中。您的数据库连接没有路径,因此它只能采用与可执行文件相同的路径。“我的代码中没有错误,因此我无法确定发生了什么。”-仅仅因为它编译了,并不意味着没有错误。您定义了
objConn
,但从未使用过它。@TnTinMn ok。。那么我该如何解决这个问题呢?在编辑您的问题时,我注意到您的app.config在
的末尾缺少一个结束括号,请参见