Sonntag, Juli 07, 2013

Identity Columns in Oracle 12c

In der letzten Woche habe ich beim Versuch, eine mit ORM-Mitteln (Hibernate, JPA) erzeugte Applikation von MySQL auf postgreSQL umzustellen, mal wieder feststellen müssen, dass die Unterschiede der RDBMS immer wieder an Stellen relevant werden, wo man sie nicht unbedingt erwartet - was ich vielleicht gelegentlich genauer ausführen werde. Um so schöner ist es, mal wieder festzustellen, dass sich die Konvergenztendenzen der großen RDBMS fortsetzen: nachdem der SQL Server vor kurzem endlich Sequenzen ins Repertoire aufgenommen hat, bringt Oracle 12c jetzt die Identity Column, was Tim Hall gewohnt detailliert beschreibt. Hier mein viel anspruchsloseres initiales Beispiel:

create table t (
    id number generated by default as identity
  , col1 number
);

insert into t(col1) values (1);
insert into t(col1) values (2);
insert into t(col1) values (42);

select * from t;

   ID       COL1
----- ----------
    1          1
    2          2
    3         42

Ob diese Annäherungen in irgendeinem Zusammenhang mit der kürzlich verkündeten Zusammenarbeit von Oracle und Microsoft stehen, weiß ich nicht - aber zweifellos erleichtern sie die Arbeit bei Portierungen.

Nachtrag 21.10.2013: Julian Dyke hat dem Feature einen längeren Artikel gewidmet, der vermutlich alles Wissenswerte zum Thema enthält.

Keine Kommentare:

Kommentar veröffentlichen