关于java向mysql插入数据时出现的问题
来源:百度知道 编辑:UC知道 时间:2024/06/24 09:16:31
DB db = new DB();
String sql = "insert into user values(null,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,now(),?,?,?,?,?)";
Connection conn = db.getConn();
PreparedStatement pstmt = db.createPreparedStatement(conn, sql);
pstmt.setString(1, username);
pstmt.setString(2, password);
pstmt.setString(3, email);
pstmt.setString(4, question);
pstmt.setString(5, answer);
pstmt.setString(6, sex);
pstmt.setString(7, telphone);
pstmt.setString(8, birthday);
pstmt.setString(9, job);
pstmt.setString(10, headimage);
pstmt.setString(11, city);
pstmt.setString(12, qq);
pstmt.setString(13, msn);
pstmt.setString(14, usernet);
pstmt.setInt(15, level
第一个设为null是错的,应该取消,这是自动生成的ID。
应该这样
String sql = "insert into user values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,now(),?,?,?,?,?)";
Connection conn = db.getConn();
PreparedStatement pstmt = db.createPreparedStatement(conn, sql);
pstmt.setString(1, username);
pstmt.setString(2, password);
pstmt.setString(3, email);
pstmt.setString(4, question);
pstmt.setString(5, answer);
pstmt.setString(6, sex);
pstmt.setString(7, telphone);
pstmt.setString(8, birthday);
pstmt.setString(9, job);
pstmt.setString(10, headimage);
pstmt.setString(11, city);
pstmt.setString(12, qq);
pstmt.setString(13, msn);
pstmt.setString(14, usernet);
pstmt.setInt(15, level);
pstmt.setInt(16, experience);
pstmt.setInt(17, jinghua);
pstmt.setInt(18, weiwang);
pstmt.setInt(19, posts);
pstmt.setInt(20, meili);
pstmt.executeUpdate();
同时,数据库中id应该设为auto_incremen