Java: jdbc - probleme.. via Eigene Funktion gibt Fehler

hi ich hab alles nötige eingebaut, um jdbc zu nutzen...

es funktioniert auch alles perfekt, wenn ich alles in einer funktion lasse, er macht den query auch, aber wenn ich dieselbe Funktion

public void dbconn(){
     }

nehme und folgendes herausschneide (wobei rs das ResultSet, also das ergebnis des querys ist):

while (rs.next()) {
           String name = rs.getString(1);
           String standort = rs.getString("sign_name");
           System.out.println( name+" "+standort);
     }

und so umforme, dass es allgemein verwendbar wäre:

public ResultSet dbconn(String query, String database){
     }

also ich mach einfach oben in die funktion:

ResultSet rs = null;

in der Mitte lege ich es fest, und unten ein:

return rs;

statt der weil-schleife da oben.
danach rufe ich diese dbconn folgendermaßen auf:

String query = "Select * from signals";
     String database = this.dbname1;
     ResultSet rs = db_manage(query,database);
     while (rs.next()) {
               String name = rs.getString(1);
               String standort = rs.getString("sign_name");
               System.out.println( name+" "+standort);
     }

... dann tritt folgender Fehler auf:

image1.java:213: unreported exception java.sql.SQLException; must be caught or d
eclared to be thrown
               while (rs.next()) {
                        ^
image1.java:214: unreported exception java.sql.SQLException; must be caught or d
eclared to be thrown
                             String name = rs.getString(1);
                                             ^
image1.java:215: unreported exception java.sql.SQLException; must be caught or d
eclared to be thrown
                             String standort = rs.getString("sign_name");
                                                 ^
3 errors

  1. Hi Thomas,

    wie ich sehe, bist du zu jdbc übergegangen ;-).

    Du musst die Exceptions entweder in der Methode deklarieren, oder fangen. Wenn es dir egal ist, ob ein Exception geworfen wird oder nicht, machst du dies am einfachsten mit ein try-catch-Block:

    try
    {
      // dein Code
      while (rs.next()) {
      String name = rs.getString(1);
      String standort = rs.getString("sign_name");
      System.out.println( name+" "+standort);
      }

    }
    catch(Exception e)
    {
     System.out.println("Fehler in der DB: " + e);
    }