java - 在第一个表中获取最后添加的 id 并使用 java 将其插入到另一个表中

标签 java mysql

我正在尝试将我的 chapter 表的最后添加的 id 插入到 lesson 表中。

这是我的代码:

String Sql = "INSERT INTO lesson"
            +"(title, chapter_id, source)"
            +"VALUES(?,?,?)";
String getId = "SELECT MAX(id) AS id FROM chapter";
rs = pst.executeQuery(getId);
int lastid = rs.getInt("id");
rs.close();
pst=conn.prepareStatement(Sql);
pst.setString(2,txt_lessonTitle.getText());
pst.setInt(3,lastid);
pst.setString(4,txt_lessonContent.getText());

pst.executeUpdate();

我遇到了一个错误:

Before start of result set

最佳答案

你需要检查是否有一些结果

rs = pst.executeQuery(getId);
if (rs.next()) {
        int lastid = rs.getInt("id");
        rs.close();
        pst=conn.prepareStatement(Sql);
        pst.setString(2,txt_lessonTitle.getText());
        pst.setInt(3,lastid);
        pst.setString(4,txt_lessonContent.getText());

        pst.executeUpdate();
}

关于java - 在第一个表中获取最后添加的 id 并使用 java 将其插入到另一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45694963/

相关文章:

java - AVL树平衡

php - 我的输入数据无法更新

Android - 对远程服务器的 Volley JSON 请求只能正常工作一次

mysql - 通过 Sqoop 将带有自定义分隔符的 HDFS 文件导出到 Mysql

Java 和 XML : Read XML tags with or without namespace

java - 如果我们没有为对象创建引用变量,如何关闭扫描器类,那么如何避免资源泄漏警告消息

Java 8 拆分字符串并在 Map 中创建 Map

java - IBatis 中的查询是否已预编译?

MySQL:确保列中数字的连续性

mysql - 记录未从 MySQL 数据库中删除