2010-06-21 127 views

Respuesta

19

bien la solución que utilizo es:

Esto consigue la columna id de la última fila insertada en el PP :)

+2

Para obtener más información sobre este enfoque, consulte la documentación en la instrucción [SELECT from INSERT] (http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2.doc.relg%2Finsl.htm) – Steven

+1

Tragedia . Esa documentación "SELECT from INSERT" cambió las ubicaciones o no estuvo disponible. – starlocke

+2

Sección de verificación * Selección de valores insertados * en la Guía de programación de DB2 SQL. Un ejemplo de mi guía es SELECT EMPNO, HIRETYPE, HIREDATE DE MESA FINAL (INSERT INTO EMPSAMP (NOMBRE, SALARIO, DEPTNO, NIVEL) VALUES ('Mary Smith', 35000.00, 11, 'asociado')) ' – Telemat

13
SELECT IDENTITY_VAL_LOCAL() AS VAL FROM SYSIBM.SYSDUMMY1 

Ver docs.

+0

SYSDUMMY1? no puedo encontrar esa tabla en el esquema sysibm ... :) –

+0

¿Estás siendo irónico? Consulte http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0002369.html –

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()

Actualización: y no se olvide de crear PreparedStatement con la siguiente bandera Statement.RETURN_GENERATED_KEYS de lo contrario, no funcionará)))

+0

Uhmmm ... Oracle! = DB2 – barrypicker

+0

Es un tutorial para java, no Oracle – Anatoly

+0

Entonces no está abordando la pregunta del OP en absoluto. – barrypicker

Cuestiones relacionadas