2012-10-06 52 views
0

我是新來的這個Java語言,所以我仍然很難弄清楚事情,雖然我沒有錯誤,但仍然沒有運行。幫我把這件事情弄清楚。我發佈了相同的程序,雖然問題是我已經找到了方法。我的java沒有錯誤,但沒有運行

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

假設這是你的整個代碼,我沒有在你的代碼中看到任何主要的方法聲明。您需要在某個主要方法中創建此類的對象。

相關問題