mySQL + RecordSet + Listbox

Hallo zusammen,

ich fülle ein Recordset mit Daten. Die Syntax ist richtig, wenn ich damit eine Abfrage mache.
Aber ich habe irgendwie das Gefühl, das mein Recordset doch leer ist bzw. bleibt.

[code]Dim db As New MySQLCommunityServer
db.Host = “"
db.Port = 3306
db.DatabaseName = “test”
db.UserName = "

db.Password = “S***”

DataList.deleteAllRows

If db.Connect Then

dim rs As recordSet
rs=db.sqLSelect(“SELECT name FROM test;”)

If db.Error Then
MsgBox("Error: " + db.ErrorMessage)
Return
End If

If rs<> Nil Then
While Not rs.EOF

  Datalist.  <- Eintrag in die Liste?
  
  rs.MoveNext
Wend
rs.Close

End If

end if[/code]

Nun wollte ich die Einträge aus dem Recordset in die Datalist eintragen, funktioniert aber nicht. Hab schon seit Stunden gegoogelt und gelesen.
Es mag einfach nicht.

Ich komme von VB.NET und da hab ich das immer mit dem Reader ausgelesen, allerdings mit SQL Server Anbindung.

Vielleicht kann mir jemand auf die Sprünge helfen.

Wie finde ich heraus, ob das Recordset überhaupt gefüllt ist und wie bekomme ich die Daten in die Listbox?

Vielen Dank schon mal im Voraus.

Gruß Peter

Nach db.connect würde ich db.error checken. Dann Breakpoints setzen und schauen, was da passiert. Generell musst Du Freundschaft mit dem Debugger schliessen. https://www.youtube.com/watch?v=RgK23y6Lq4Y

You dimmed rs within the if endif construction. This means rs is outof scope as soon as endif is executed.
move the dim to before the if endif and everything should be ok and as Maximilian says allways check the db.error.

Danke für die Hilfe. Hat sich erledigt. Manchmal sieht man den Wald vor lauter Bäumen nicht.
Wenn ich die Methode nicht aufrufe, kann auch nichts passieren. Schlimm das man so ein Blackout hat.

Funktioniert soweit. Werde mich mal mit den Spalten jetzt beschäftigen.

Ist schon erstmal komisch der Umstieg, wenn man von VB.NET kommt und hier ein klein wenig anders denken muss.

Gruß Peter

Forum for Xojo Programming Language and IDE. Copyright © 2021 Xojo, Inc.