在数据库表中插入新行后,可以获取生成的主键的值,如下所示:
PreparedStatement statement = connection.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
ResultSet keys = statement.getGeneratedKeys();
但是如何检索其他不是键的自动生成的值。让我们说我的表定义如下:
CREATE TABLE foo (
id INT PRIMARY KEY AUTO_INCREMENT,
changed TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
是否可以获取列changed
的值而无需使用返回的主键再次查询数据库?
答案 0 :(得分:0)
不,数据更改语句INSERT,UPDATE不返回已更改/插入的字段的值。您可以要求输入最后一个密钥,但即使这是另一个DBMS呼叫。