0

データベースに 4 つの列があり、それらの列にコンボボックスの項目を挿入する必要があります。以下のコードを試しましたが、コンボボックスに4つのアイテムが挿入された場合にのみ機能します。コンボボックスに 2 つのアイテムのみを挿入すると、残りの 2 つを NULL に挿入する必要があります。

if(e.getSource()==btn_save)
{
try{

     Connection con;

     DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver());

     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

     con = DriverManager.getConnection("jdbc:odbc:dsnproj","","");

     Statement s1 = con.createStatement();

     String q1="insert dest,route1,route2,route3,route4 into trans_dest values(
                '"+cmb_dest.getSelectedItem()+"',
                '"+cmb_route.getItem(0)+"',
                '"+cmb_route.getItem(1)+"',
                '"+cmb_route.getItem(2)+"',
                '"+cmb_route.getItem(3)+"')";

     s1.execute(q1);


     }

     catch(Exception ae)
     {
         System.out.println(ae);
     }
  }
}

2 つのアイテムを挿入し、2 つのアイテムが空白のままになると、次のエラーが発生します。

java.lang.ArrayIndexOutOfBoundsException: 3 >= 2
java.lang.StackTraceElement;@1d8957f

4

0 に答える 0