有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

数据库如何返回java中最后添加项的最后一个主键?

具有具有双主键的链接(或ref)表。需要返回从所选表中的当前连接自动生成的最后一个主键。这是用java编写的。 数据库在MS Access中,如果这有区别的话。 很抱歉这么匆忙的描述,但是我们的团队工作时间很紧

任何链接或建议都将不胜感激

编辑:

使用SQL填充数据库。我们为一个表单输入数据,但不知道自动生成的数字。需要找出这是什么,以便可以输入到ref表中。我们只知道一半的复合密钥,这就是为什么我们需要第二个

编辑:

你是目前为止最好的答案(似乎无法评论)。 我得到以下错误。。。 线程“AWT-EventQueue-0”java.lang.UnsupportedOperationException中出现异常

有什么建议吗


共 (3) 个答案

  1. # 1 楼答案

    声明。getGeneratedKeys()应该可以做到这一点

  2. # 2 楼答案

    你需要做两件事。首先,在准备语句或执行语句时,必须传入一个额外的参数。如果您使用的是预先准备好的语句,请执行以下操作:

    stmt = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
    

    如果未使用预处理语句,请在调用executeUpdate()时执行以下操作:

    stmt.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);
    

    执行语句后,可以调用

    ResultSet rs = stmt.getGeneratedKeys()
    

    这将为您提供一个结果集,其中包含生成的任何键

    我还没有在Access中尝试过这种方法,但它可以很好地用于SQL Server标识列

  3. # 3 楼答案

    将复合键的两个值放入包含两个元素的对象数组中,并返回该数组

    或者,将新的复合键放入刚刚保存的实例中,并返回该实例