mysql java executeUpdate会覆盖最后一行

时间:2015-09-08 21:36:54

标签: mysql jdbc

Java代码:

PreparedStatement stmt = conn.prepareStatement(insert into answer ( content_id, question_id, user_id, answer, answer_id ) values ( ? , ? , ? , ?, ? ) ");
    stmt.setLong(1, contentID);
    stmt.setLong(2, questionID);
    stmt.setString(3, userID);
    stmt.setString(4, answer);
    stmt.setLong(5, answerID);
    stmt.executeUpdate();

但它不会在mysql db中添加新行,只是用相同的answerID覆盖(递增主键)行!

如果我手动从mysqlworkbench执行 - 它按预期添加行!表结构:

  `id` int(11) NOT NULL AUTO_INCREMENT,
  `content_id` int(11) NOT NULL,
  `question_id` int(11) NOT NULL,
  `answer_id` int(11) DEFAULT '0',
  `user_id` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
  `answer` longtext COLLATE utf8_unicode_ci,
  `status` char(1) COLLATE utf8_unicode_ci DEFAULT '0',
  PRIMARY KEY (`id`)

0 个答案:

没有答案