Fehlermeldung bei parametrisierter DB-Abfrage

  • VB.NET
  • .NET (FX) 3.0–3.5

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von TheProfessor.

    Fehlermeldung bei parametrisierter DB-Abfrage

    Hallo alle miteinander,

    im folgenden Codefragment versuche ich meiner Abfrage zwei Parameter zuzuweisen. Beim ausführen der Zeile 20. springt der Code in die Klasse DBAbfrage in Zeile 16. Beim Ausführen von "reader = command.ExecuteReader()" in Zeile 19. löst der try/catch-Block aus und gibt folgenden Fehler zurück: "Der angegebene Typname wurde nicht erkannt. [,,,,,]". Was ist hier das Problem?

    Als Datenquelle nutze ich eine "lokale Datenbank".

    VB.NET-Quellcode

    1. Imports System.Data.OleDb
    2. Public Class NeueSchicht
    3. Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
    4. Dim strVorname As String
    5. Dim strNachname As String
    6. Dim intMitarbeiterID As Integer
    7. strVorname = "Max"
    8. strNachname = "Mustermann"
    9. Dim MitarbeiterID As New DbAbfrage("SELECT MitarbeiterID FROM tblMitarbeiter WHERE Vorname = ? AND Nachname = ?")
    10. MitarbeiterID.command.Parameters.Add(New OleDbParameter("paramVorname", OleDb.OleDbType.VarChar)).Value = strVorname
    11. MitarbeiterID.command.Parameters.Add(New OleDbParameter("paramNachname", OleDb.OleDbType.VarChar)).Value = strNachname
    12. MitarbeiterID.ExecuteReader()
    13. End Sub
    14. End Class

    VB.NET-Quellcode

    1. Imports System.Data.OleDb
    2. Public Class DbAbfrage
    3. Public connection As New OleDbConnection
    4. Public command As New OleDbCommand
    5. Public reader As OleDbDataReader
    6. Sub New(ByVal CommandText As String)
    7. connection.ConnectionString = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=C:\Users\Home\Desktop\Thomas\Dienstplan\Dienstplan\DienstplanDatenbank.sdf"
    8. command.Connection = connection
    9. command.CommandText = CommandText
    10. End Sub
    11. Sub ExecuteReader()
    12. Try
    13. connection.Open()
    14. reader = command.ExecuteReader()
    15. Catch ex As Exception
    16. MessageBox.Show(ex.Message)
    17. End Try
    18. End Sub
    19. End Class


    Vielen Dank für die Hilfe und viele Grüße