Java 使用PreparedStatement插入,并为插入的行返回一列的值
我正在使用Java 使用PreparedStatement插入,并为插入的行返回一列的值,java,mysql,jdbc,prepared-statement,Java,Mysql,Jdbc,Prepared Statement,我正在使用PreparedStatement批量插入MySQL数据库。然后,我需要查询为成功插入的行返回一个特定列(名称)的值。我已经试过: preparedStatement = connection.prepareStatement("INSERT INTO x (id,name) VALUES (?,?)", new String[]{"name"}); 但是,我还没有找到任何方法在preparedStatement运行后从中获取返回值。我尝试了p
PreparedStatement
批量插入MySQL数据库。然后,我需要查询为成功插入的行返回一个特定列(名称)的值。我已经试过:
preparedStatement = connection.prepareStatement("INSERT INTO x (id,name) VALUES (?,?)", new String[]{"name"});
但是,我还没有找到任何方法在preparedStatement运行后从中获取返回值。我尝试了
preparedStatemet.getGeneratedKeys()代码>但它只返回主键值。使用生成的键查找插入的行。在该查询中,返回所需的任何列
停留在单个事务中,以获得不变的结果。@SusanMustafa谢谢。但它不是指executeBatch
,它指的是executeUpdate
,executeBatch
的int[]
结果(0和1)可能用于从使用名称的数组或列表中进行选择。@JoopEggen似乎是最好的解决方案。谢谢谢谢,但它至少需要一个额外的查询!