2010-06-21 123 views

回答

19

好,我使用的解决方案是:

这会从插入DB :)

+2

有关此方法的更多信息,请参阅文档在[SELECT from INSERT语句](http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2.doc.relg%2Finsl.htm) – Steven 2012-06-22 19:41:55

+1

悲剧。 “从插入选择”文档更改位置或变得不可用。 – starlocke 2014-08-01 13:20:39

+2

检查节*在“DB2 SQL编程指南”中选择插入的值*。我的向导中的示例是 'SELECT EMPNO,HIRETYPE,HIREDATE 从最终表(插入到EMPSAMP(名称,薪水,DEPTNO,级别) VALUES('Mary Smith',35000.00,11''Associate'))' – Telemat 2015-02-07 17:09:16

13
SELECT IDENTITY_VAL_LOCAL() AS VAL FROM SYSIBM.SYSDUMMY1 

请参阅docs

+0

SYSDUMMY1?我无法在sysibm架构中找到该表...... :) – 2010-06-21 19:34:37

+0

你是否很讽刺?请参阅http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0002369.html – 2010-06-21 19:59:53

0
int keyId = -1; 
preparedStatement.executeUpdate(); 
resultSet = preparedStatement.getGeneratedKeys(); 
if (resultSet.next()) { 
    keyId = rs.getInt(1); 
} 

https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getGeneratedKeys()

更新:不要忘了用下列标志创建preparedStatement时否则将无法使用)))

+0

呃... Oracle!= DB2 – barrypicker 2016-01-15 00:33:18

+0

这是java的教程而不是Oracle – Anatoly 2016-01-15 10:21:17

+0

那么你根本没有解决OP的问题。 – barrypicker 2016-01-15 17:30:43