HSQLDBでは `IDENTITY`キーワードを使って自動インクリメント列を定義することができます。通常、これは主キーです。以下の例を見直してください:
1. IDENTITY – デフォルト
デフォルトでは、IDENTITY値は0から始まります。
CREATE TABLE users ( id INTEGER IDENTITY PRIMARY KEY, name VARCHAR(30), email VARCHAR(50) );
INSERT INTO users (name, email) VALUES ('mkyong', 'aaa@gmail.com'); INSERT INTO users (name, email) VALUES ('alex', 'bbb@gmail.com'); INSERT INTO users (name, email) VALUES ('joel', 'ccc@gmail.com');
出力
0, mkyong, aaa@gmail.com 1, alex, bbb@gmail.com 2, joel, ccc@gmail.com
2. IDENTITY – 始める
IDENTITYの値は100で始まり、1ずつ増加します。
CREATE TABLE users ( id INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 100, INCREMENT BY 1) PRIMARY KEY, name VARCHAR(30), email VARCHAR(50) );
出力
100, mkyong, aaa@gmail.com 101, alex, bbb@gmail.com 102, joel, ccc@gmail.com