MySQL-Server gibt -1 als Ergebnis bei ExecuteNonQuery

  • VB.NET
  • .NET (FX) 4.0

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    MySQL-Server gibt -1 als Ergebnis bei ExecuteNonQuery

    Ich habe eine Funktion geschrieben, welche in einer Klasse liegt, einen MySQL Befehl entgegen nimmt und das Ergebnis via "Return" ausgibt. Das Problem, dass ich habe ist, dass wenn ich irgendeine Abfrage mit dieser Funktion mache, dann bekomme ich immer als Return -1 zurück.

    Meine Funktion:

    Quellcode

    1. Public Shared Function mysqlcmd(ByVal cmd As String) As String
    2. Dim connectionstring As String = "server=xxx;user=xxx;database=xxx;port=3306;password=xxx;"
    3. Dim connection As New MySql.Data.MySqlClient.MySqlConnection(connectionstring)
    4. Dim command As New MySql.Data.MySqlClient.MySqlCommand(cmd, connection)
    5. Dim result As String
    6. Try
    7. connection.Open()
    8. result = command.ExecuteNonQuery()
    9. connection.Close()
    10. Return result
    11. Catch ex As Exception
    12. MsgBox(ex.ToString)
    13. Finally
    14. connection.Close()
    15. End Try
    16. End Function


    Und das Aufrufen selbiger:

    Quellcode

    1. Dim Wetter As String
    2. Wetter = funktionen.mysqlcmd("SELECT Wetter From allgemein WHERE id = 1")
    3. MsgBox(Wetter)


    In der Textbox steht dann nur -1 egal was in der Datenbank steht.
    Ich habe eine Lösung für das Problem gefunden.
    Die Funktion mysqlcmd nutze ich nur noch für INSERT und UPDATE und für SELECT nutze ich folgendes:

    Quellcode

    1. Public Shared Function mysqlrdr(ByVal cmd As String) As String
    2. Dim connectionstring As String = "server=xxx;" & "user id=xxx;" & "password=xxx;" & "database=xxx"
    3. Dim connection As New MySql.Data.MySqlClient.MySqlConnection(connectionstring)
    4. Dim command As New MySql.Data.MySqlClient.MySqlCommand(cmd, connection)
    5. Dim reader As MySqlDataReader
    6. Dim result As String
    7. Try
    8. connection.Open()
    9. reader = command.ExecuteReader()
    10. While reader.Read()
    11. result = (reader(0))
    12. Return result
    13. End While
    14. Catch ex As Exception
    15. MsgBox(ex.ToString)
    16. Return "error"
    17. End Try
    18. End Function

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Xyolyp“ ()