2016年2月9日火曜日

Java : SELECT LAST_INSERT_ID() の利用

JavaでMySQLにInsertした後、そのAuto_IncrementされたIDを取得します。
例としてknapsacksテーブルに何かをInsertした後、そのIDを取得します。
数行で取れるので楽。

[insertKnapsack関数]


        public void insertKnapsack(int n,double obj){
                String sql = "INSERT INTO knapsacks(n,obj) VALUES ("+n+","+obj+")";
                try {
                        stmt.execute (sql);
                        ResultSet rs1 = stmt.executeQuery("SELECT LAST_INSERT_ID() AS LAST");
                        if (rs1 != null && rs1.next()){
                                id = rs1.getInt("LAST");
                        }
                        System.out.println("Knapsack_ID="+id);
                } catch (SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                }  //try catchで囲む
        }


参考
http://d.hatena.ne.jp/tacohachi/20100127/p1

0 件のコメント:

コメントを投稿