【问题标题】:cannot connect to access database using vb.net无法使用 vb.net 连接到访问数据库
【发布时间】:2016-04-20 03:24:00
【问题描述】:

我正在尝试连接到我的访问数据库,即 mdb 到 vb.net 项目。我已将平台更改为 x86,但仍然无法正常工作。我似乎真的不知道问题是什么。希望能帮到你,先谢谢了

Imports System.Data.OleDb 'provides classes to connect to the database

Public Class Form1
Dim conn As New OleDbConnection

Private Sub RefreshData()
    If Not conn.State = ConnectionState.Open Then
        conn.Open()
    End If

    Dim da As New OleDbDataAdapter("SELECT ID as [No], " & _
                                   "UserName as [Name], " & _
                                   "FROM Table1 " & _
                                   "ORDER BY ID", conn)
    Dim dt As New DataTable
    'fill data to dataTable
    da.Fill(dt)

    'Offer data in dataTable to dataGridView
    Me.DataGridView1.DataSource = dt

    'close connection
    conn.Close()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    conn = New OleDbConnection
    conn.ConnectionString = "PROVIDER = Microsoft.Jet.OleDB.4.0; Data Source= C:\Users\user\Documents\Access Database\Database2.mdb"

    RefreshData()
End Sub
End Class

【问题讨论】:

  • 错误信息是什么?
  • 没有错误信息,但是数据网格视图中没有显示数据@Jeroen
  • 假设您在Load 事件处理程序中调用RefreshData 方法,可能会抛出异常,但它会被默默吞下。将调用包装在 Try...Catch 块中以找出答案。如果有例外,那么您或我们都可以从中解决问题。

标签: vb.net


【解决方案1】:

您的 SQL 语句中有错误。代码:

Dim da As New OleDbDataAdapter("SELECT ID as [No], " & _
    "UserName as [Name], " & _
    "FROM Table1 " & _
    "ORDER BY ID", conn)

应该as [Name],之后有一个逗号 相反,它应该是:

Dim da As New OleDbDataAdapter("SELECT ID as [No], " & _
    "UserName as [Name] " & _ `NO COMMA!
    "FROM Table1 " & _
    "ORDER BY ID", conn)

【讨论】:

  • 我不知道你是如何编译你的版本的。 Visual Studio 立即告诉我错误出在哪里...
猜你喜欢
  • 1970-01-01
  • 2015-06-27
  • 2013-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多