try catch

Halo1982

Mitglied
Hallo,
Bei meinem aktuellen Projekt muss ich mit DAtenbanken arbeiten. Jetzt kann ich schon alle Tabellen auslesen, aber anscheinend sind auch "tote" dabei, die beim lesen einen Fehler verursachen, da sie nicht da sind. Wenn ich jetzt versuche mit Try und Catch den Fehler abzufangen, so bricht mir auch die Schleife ab.....das bringt mir nichts 🙂

Gibt es eine Möglichkeit, das ich die Tabelle einfach überspringe?

Code:
      //Ids auslesen
      try{
      for(int i = 0; i<tabellen.length;i++)
      {
          rSID = statement.executeQuery("select * from "+dbName+"."+tabellen[i]);
          IDauslesen(rSID, i);
      }
      }
      catch(com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException e)
      {
          System.out.println(e.getMessage());
      }
 
Warum machst du das try/catch nicht innerhalb der Schleife? 😉

Generell wäre es natürlich schöner wenn du die Datenbank vorher fragst ob es eine Tabelle mit diesem Namen überhaupt gibt (sollte man natürlich nur machen wenn man sich nicht sicher sein kann)
 
Hi,

du übergibst direkt nach dem executeQuery das Ergebnis an eine Methode, ohne zu prüfen ob es überhaupt ein Ergebnis gibt. Entweder du wrappst die Methode IDauslesen in ein
if (rSID != null){}
damit du die NullPointerException umgehst oder du behandelst das Null Objekt direkt in deiner Methode.

Methoden fangen bitte immer mit kleinen Buchstaben an und führen das CamelCase fort.
idAuslesen(...);
wäre die richtige Schreibweise.

Nur zum Verständnis... wieso will man ALLE Daten aus allen Tabellen auslesen? Wo ist der Sinn?

Grüßeeee 😉
 

Zurück
Oben