DMalerman
DMalerman

Reputation: 31

VB.NET connection to MS Access

I get an error when I am trying to connect to a Microsoft Access DB using VB.NET. I see examples all over the web. My code looks like those examples, however I am getting a build error message stating:

Type 'System.Data.OleDb.OleDbConnection' is not defined.

I have tried adding some kind of import statement for the system.data.oledb... but that does not seem to work. My code is below. It is a basic connection so I am thinking that I am missing some kind of add in, library, or setting. Any and all help would be greatly appreciated.

Public Function TestMain(ByVal args() As Object) As Object
    ' Connection String to MS Access DB
    Dim connectStr As String = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
                             "Data Source=C:\Users\DMalerman\keyword.accdb;" & _
                             "Persist Security Info=False;"
    MsgBox(connectStr)
    ' Create connection to the db
    Using connection As New System.Data.OleDb.OleDbConnection(connectStr)
        ' Create the SQL Query
        Dim readQuery As String = "Select KeywordDriver.ScriptName from KeywordDriver " & _
                                    "where KeywordDriver.Keyword = test"
        Dim queryCommand As New System.Data.OleDb.OleDbCommand(readQuery, connection)

        'Open the Connection
        connection.Open()

        ' Query the Database
        Dim dbReader As System.Data.OleDb.OleDbDataReader = queryCommand.ExecuteReader()

        ' Loop until there is nothing left to read
        While dbReader.Read()
            Dim sKeyword As String = ""
            sKeyword = dbReader.GetString(0)
            MsgBox(sKeyword)
        End While
        ' Close the Reader
        dbReader.Close()

    End Using

    Return Nothing
End Function

Upvotes: 2

Views: 15272

Answers (3)

uld
uld

Reputation: 1

Imports System.Data Imports System.Data.OleDb Module Module1 Public str As String Public con As OleDbConnection Public cmd As OleDbCommand Public dtreader As OleDbDataReader Public dtadapter As OleDbDataAdapter

Public Sub openconn()
    str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Database2.mdb"
    con = New OleDbConnection(str)

    Try
        con.Open()
    Catch ex As Exception
        MessageBox.Show("gagal koneksi")
    End Try
End Sub

End Module

Upvotes: 0

Alex
Alex

Reputation: 1659

Please try to modify this line: Dim queryCommand As New System.Data.OleDb.OleDbCommand(readQuery, connection)

by putting these only: Dim queryCommand As New System.Data.OleDb.OleDbCommand(readQuery) queryCommand.Connection = connection

Upvotes: 0

Beth
Beth

Reputation: 9617

did you try

imports System.Data.OleDb

? if so, did it give you an error?

Upvotes: 1

Related Questions