I have a H2 database with 16 million entries and no primary key. I successfully added an auto-incrementing primary key using the following statements:
ALTER TABLE
PUBLIC.ADDRESSES ADD ID BIGINT AUTO_INCREMENT;
ALTER TABLE
PUBLIC.ADDRESSES ADD PRIMARY KEY (ID)
Now the problem is, that the column order is STREET, HOUSENUMBER, ..., ID, but I would like ID to be the first column of the table. It looks like there is a corresponding ALTER TABLE statement MySQL (see here), but I'm unable to adapt it to H2.
Long story short: How can I change the column order to ID, STREET, HOUSENUMBER ...? Is there a solution similar to:
ALTER TABLE "ADDRESSES" MODIFY COLUMN "ID" BEFORE "STREET";
Any help is kindly appreciated.
SELECT * FROMqueries (I don't rely on column order in any case). Thanks for the tip regarding copying the table.alter tablestatements? First, rename the column, then add a new column with the right name at the right position (alter table addsupports positioning), and finally dropping the old column. Or userename tableand thencreate table ... as select.CREATE TABLE AS SELECT ...is more elegant than copying and renaming columns). If you converted your comment into an answer I'd be glad to accept it as an answer.