2012-03-25 13 views
-2

こんにちは私はこの値をデータベースに挿入する必要があります。しかし、私は私のデータベースにこれを正しく挿入したPreparedStatementラインデータベースへの挿入時のヌルポインタ例外

public void insertReservation(String name, String phone, int size, String date, String time, String additionalRequirements, String memberID, String themeID) throws SQLException, ClassNotFoundException { 

     try { 
      String strQuery = "INSERT INTO reservation VALUES (?, ? ,?, TO_DATE(?, 'dd-MMM-yy'), ?, ?, ?, ?)"; 
      PreparedStatement stmt = conn.prepareStatement(strQuery);/ 
      stmt.setString(1, name); 
      stmt.setString(2, phone); 
      stmt.setInt(3, size); 
      stmt.setString(4, date); 
      stmt.setString(5, time); 
      stmt.setString(6, additionalRequirements); 
      stmt.setString(7, memberID); 
      stmt.setString(8, themeID); 
      results = stmt.executeQuery(); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     }//end try 
    } 

アムにNULLポインタ例外を取得していますか?私はなぜこのnullポインタの例外エラーを取得しているのかわかりません。

+2

役立つことを願っています。 – usr

+0

なぜあなたがnullpointer例外を取得しているのですが、[この質問]をチェックアウトしているのか分かりません(http://stackoverflow.com/questions/1023835/why-am-i-getting-a-null-pointer-exception-from - このjavaコード)。 – keyser

+0

引用符をエスケープしてみてください。\ ' –

答えて

7

connnullです。その値を印刷します。

0

)、知っているが、この

String strQuery = "insert into reservation(ColumnName1, ColumnName2 ,ColumnName3,) values(?,?をしようとしないでください ";?

と最後にそれだけで()を実行されます。

executeQuery();

stmt.execute();このような文は、selectで動作しますクエリのみ

次のように、このconn = Sのように割り当てる必要がある場合は、クエリを使用しているコンストラクタまたはメソッドでconn値を記述しましたか? qlConnection.ConnecrDb();以下

私は

public class SqlConnection { 

    Connection conn=null; 

    public static Connection ConnecrDb(){ 
     try 
     { 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
     Connection conn= DriverManager.getConnection("jdbc:odbc:Test","",""); 
     return conn; 
     } 
     catch(Exception e) 
     { 
     JOptionPane.showMessageDialog(null, e); 
     return null; 
     } 
    } 
} 

を作成しているのSqlConnection洗面所独立クラスを使用すると、私たち誰も助けることはできません例外については何も教えていない場合、それはあなた

関連する問題