2012-01-21 15 views

Respuesta

51

Citando Java Persistence/Identity and Sequencing:

Identidad secuenciación utiliza columnas de identidad especial en la base de datos para permitir que la base de datos para asignar automáticamente un ID para el objeto cuando se inserta la fila. Las columnas de identidad son compatibles con muchas bases de datos, como MySQL, DB2, SQL Server, Sybase y Postgres. Oracle no admite columnas de IDENTIDAD, pero se pueden simular mediante el uso de objetos de secuencia y disparadores.

En inglés sencillo: marca como máximo una columna ID en su tabla como IDENTIDAD. El motor de base de datos pondrá el próximo valor de disponible automáticamente.

Y:

Secuencia objetos utilizar objetos base de datos especial para generar los identificadores. Los objetos de secuencia solo son compatibles con algunas bases de datos, como Oracle, DB2 y Postgres. Por lo general, un objeto SEQUENCE tiene un nombre, un INCREMENTO y otras configuraciones de objeto de base de datos. Cada vez que se selecciona <sequence>.NEXTVAL, la secuencia se incrementa con el INCREMENTO.

Las secuencias son más flexibles y un poco más complejas. Define un objeto adicional en su base de datos al lado de tablas, activadores, etc. llamado secuencias. Las secuencias son básicamente contador de nombres que puedes usar en cualquier lugar dentro de las consultas.

+0

[Oracle admite la estrategia de IDENTIDAD desde la versión 12c] (https://oracle-base.com/articles/12c/identity-columns-in-oracle-12cr1) – user11153

Cuestiones relacionadas