schon beim einsteiger-beispiel durchgefallen.

  • Themenstarter Themenstarter bebewolf
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
B

bebewolf

Gast
Versuch gerade, dem Thema Java und Datenbanken etwas näher zu kommen und jetzt hakt es schon bei den Einsteigerbeispielen. Mein Code sieht folgendermaßen aus:

Code:
import java.sql.*;

class HelloWorld1
{  
        public static void main(String args[])
        {
           System.out.println("Hello World!");
           try {
           
           Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
           String db_url = "jdbc:odbc://c:/Javatests/dbanktest";
           Connection mein_con = DriverManager.getConnection(db_url, "", "");      
                  
           }
           catch(SQLException sqlex){}
           
           

           Statement mein_stmnt = mein_con.createStatement();	
        
        }
        
     
}

Wenn ich das compiliere stört er sich an folgendem:

C:\Javatests\HelloWorld1.java:19: cannot find symbol

symbol : variable mein_con

location: class HelloWorld1

Statement mein_stmnt = mein_con.createStatement();


Warum??
 
deine var mein_con wird im try catch block erstellt

das heisst, wenn ein fehlere auftritt kann es sein dass sie gar nie erstellt wird. trotzdem willst du später auf sie zugreifen.

das lässt der compiler nicht zu. erstelle die var vorher.

Code:
Connection mein_con;
try{
...
mein_con = DriverManager.getConnection(db_url, "", "");
}
catch(SQLException sqlex){} 
Statement mein_stmnt = mein_con.createStatement();
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben