Jump to content

Ich habe ein Problem mit MySQL


Empfohlene Beiträge

Bei meinem Problem handelt es sich um eine StatsManager-Methode die Asynchron läuft aber leider Fehler macht bzw ich Fehler gemacht habe :( Ich hoffe ihr könnt mir Helfen und ich sehe dann was für dumme Fehler ich gemacht habe. 

Das ist die StatsManager-Methode: https://hastebin.com/egorequhay.java
Das ist die MySQL-Klasse: https://hastebin.com/ojimekazom.java

Ich denke nicht, dass der Fehler in der MySQL-Klasse liegt sondern ich irgendwo einen Fehler in der StatsManager-Methode gemacht habe den ich bisher leider nicht finden konnte.

Ich hoffe so sehr, dass mir hier einer Helfen kann und ich dadurch Lernen kann. 

 

Liebe Grüße: leluckyyDE

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 11 Minuten schrieb boomer41:

Und die Fehlerbeschreibung ist...?

Gewöhne dir bitte an, eine detaillierte Fehlerbeschreibung mit reinzupacken, sonst können wir hier nur in die Glaskugel schauen.

https://hastebin.com/omekasojef.md

Das ist die Fehlermeldung :c Ich weiß nicht ob bei den add/remove Geschichten auch ein Fehler ist

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also pass auf was da los ist:

Wenn du dein ResultSet bei einem SELECT zurückbekommst, ist es noch ganz am Anfang. Du musst dann mit resultSet.next() das erste bzw. auch die nächsten Elemente laden.

Mit resultSet.hasNext() kannst du prüfen, ob noch eine Zeile mit .next() ladbar ist.

Sorry hab was verwechselt. Wenn du next() aufrufst, gibt das ein boolean zurück, das dir anzeigt, ob es noch ein Element gab, das jetzt geladen wurde.

Heisst wenn next() true zurück gibst, kannst du noch Daten abgreifen, sobald es false zurück gibst, ist das ResultSet "hinter" dem letzten Element und es gibt keine Daten mehr.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 4 Minuten schrieb boomer41:

Also pass auf was da los ist:

Wenn du dein ResultSet bei einem SELECT zurückbekommst, ist es noch ganz am Anfang. Du musst dann mit resultSet.next() das erste bzw. auch die nächsten Elemente laden.

Mit resultSet.hasNext() kannst du prüfen, ob noch eine Zeile mit .next() ladbar ist.

Also muss ich nur abfragen ob der resultSet einen next hat?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gerade eben schrieb leluckyyDE:

Also muss ich nur abfragen ob der resultSet einen next hat?

Jein so einfach ist das nicht. Datenbanken gehen grundsätzlich davon aus, dass es mehrere Antwortzeilen geben kann.

In deinem Fall würde aber dennoch reichen, einfach next() aufzurufen, bevor du die Daten verwenden willst. Wenn du schauen willst ob überhaupt eine Zeile drin ist, kannst du einfach schauen was für next() zurückkommt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gerade eben schrieb boomer41:

Jein so einfach ist das nicht. Datenbanken gehen grundsätzlich davon aus, dass es mehrere Antwortzeilen geben kann.

In deinem Fall würde aber dennoch reichen, einfach next() aufzurufen, bevor du die Daten verwenden willst. Wenn du schauen willst ob überhaupt eine Zeile drin ist, kannst du einfach schauen was für next() zurückkommt.

Ich musste einfach if (resultSet.next()) {  }  benutzen, also es geht jetzt. DANKE FÜR DEINE HILFE! ❤️

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...
B
B