2012-10-06 3 views
0

저는이 자바 언어에 익숙하지 않으므로 아직 오류가 없지만 여전히 실행되지는 않습니다. 이 일을 이해하도록 도와주세요. 이 문제는 이미 내가 알아 낸 것이지만 동일한 프로그램을 게시했습니다.내 자바는 오류가 있지만 아직 실행 중이 아닙니다.

public Connection dbConnection() throws Exception 
{ 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    String filename = 
     "C:/Documents and Settings/gebs/Desktop/Database1.mdb";// fileplace 
    String database = 
     "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";// connection driver 
    database += filename.trim() + ";DriverID=22;READONLY=true}"; 
    return DriverManager.getConnection(database, "", ""); 

    try 
    { 
     Connection con = dbConnection(); 

     String lname = this.jTextField1.getText(); 
     String fname = this.jTextField2.getText(); 
     String mname = this.jTextField3.getText(); 
     String address = this.jTextField4.getText(); 
     String birthday = 
      (String) this.jComboBox1.getSelectedItem() 
       + this.jTextField5.getText() + this.jTextField6.getText(); 
     String gender = (String) this.jComboBox2.getSelectedItem(); 
     String age = this.jTextField7.getText(); 
     String contactno = this.jTextField8.getText(); 
     String contactperson = this.jTextField9.getText(); 
     String department = this.jTextField11.getText(); 
     String position = this.jTextField12.getText(); 

     // to insert to database 
     String query = 
      "INSERT INTO Personal_Category " 
       + "(Last_Name,First_Name,Middle_Initial,Address, " 
       + "Birthday,Gender,Age,Contact_No,Contact_Person," 
       + "Department,Position) " 
       + "VALUES (?,?,?,?,?,?,?,?,?,?,?,)"; 

     PreparedStatement pre; 
     pre = con.prepareStatement(query); 
     pre.setString(1, lname); 
     pre.setString(2, fname); 
     pre.setString(3, mname); 
     pre.setString(4, address); 
     pre.setString(5, birthday); 
     pre.setString(6, gender); 
     pre.setString(7, age); 
     pre.setString(8, contactno); 
     pre.setString(9, contactperson); 
     pre.setString(10, department); 
     pre.setString(11, position); 
     pre.execute();// execute 
     con.close(); 
    } 
    catch (Exception e) 
    { 
     System.out.println(e); 
    } 
} 
+1

"작동하지 않음"은 약간 애매합니다. 자세한 내용을 제공해 주시겠습니까? –

+1

적절한 변수 이름을 사용할 수도 있습니다. 'jTextField11'은 텍스트 필드라는 것 외에 아무것도 알려주지 않습니다. – icktoofay

+0

Java를 처음 사용하는 경우 JDBC를 사용하는 이유는 무엇입니까? – LanguagesNamedAfterCofee

답변

5

문제는 당신 return 성명 :이 선 후

return DriverManager.getConnection(database, "", ""); 

아무것도 이제까지 도달 할 수없는이 시점에서 방법이 종료 (즉, 반환) 때문이다. 그래서 컴파일러는 불평합니다.

0

전체 코드로 가정하면 코드에 기본 메소드 문이 표시되지 않습니다. 이 클래스의 생성 및 객체를 메인 메소드에서 어딘가에 생성해야한다.

관련 문제