Oracle Multi Row Inserts (row value constructor)
Ich wollte bei einer Oracle Datenbank ein Insert mit mehreren Zeilen
durchführen:
insert into foo values
('foo1', 'bar1'),
('foo2', 'bar2');
Aber die Oracle Datenbank hat mir einen ORA-Fehlercode um die Ohren
geworfen. Ich war irritiert.
Meine lokale Oracle Testdatenbank hat das aber ohne Probleme geschluckt.
Meine lokale Testdatenbank ist aber auch die aktuelle Version 23ai
irgendwas (vorher 23c, umbenannt zu 23ai, wegen artificial intelligence
(kein Witz, aber auch nicht überraschend, nich nich?)).
Scheinbar ist das ein ganz frisches Feature der Oracle Datenbank 23c.
Das Feature heißt wohl row value constructor
und existiert seit
SQL-92. Postgres unterstützt dieses Feature seit Version 8.2. Postgresql
8.2 wurde am 05.12.2006 veröffentlicht. Ich musste das nachschlagen, weil
manchmal benutzt man ja Dinge in SQL, die gar nicht "Standard" sind und sie
einfach so "hinnimmt".
18 Jahre später hat Oracle das nun also auch. Das ist doch super :).