views:

308

answers:

1

I'm currently starting a new Java application using the H2 database, but I have some confusion about basic SQL use for creating tables. How do I make a table of entries (strings) each with unique, auto-incrementing, non-null, integer primary keys? One of the most basic things to do, but I'm not sure offhand what the correct way to do it with H2 is.

I blame these for my confusion (specifies more than one way of doing the same thing between different databases; can't figure the right way for H2, though): http://www.w3schools.com/Sql/sql_primarykey.asp http://www.w3schools.com/Sql/sql_autoincrement.asp

+1  A: 

If I'm reading the H2 documentation correctly, this should work:

CREATE TABLE MyTableName(PKFieldName IDENTITY PRIMARY KEY, StringFieldName VARCHAR(255))

Basically, you just want to declare your key column to be of type IDENTITY.

For data type, see: http://www.h2database.com/html/datatypes.html#identitytype
For table syntax, see: http://www.h2database.com/html/grammar.html#createtable

Matt
Identity does all of that? Ok I'll give it a shot. Thanks.
Daddy Warbox