PostgreSQL
ローカルにインストールしてDB関連のテストプログラムを自由に実行できるようにしました。
シーケンス
以下でシーケンス作成細かいオプションについてはHELP見てくれ。
CREATE SEQUENCE [seq_name];
- 取得
SELECT nextval('seq_name');
- 現セッション上で直近に取得した値
SELECT currval('seq_name');
- 値設定
SELECT setval('seq_name', num);
- シーケンス参照
\ds
- insert文中での使用
nextval はそのままinsert文中に使えます。
INSERT INTO TABLE (ID) VALUES (nextval('seq_name'));
- serial型
型定義時にserialと定義すると自動で採番してくれるカラムが出来ます。
CREATE TABLE tablename ( colname SERIAL );
は以下を指定することと同じです。
CREATE SEQUENCE tablename_colname_seq; CREATE TABLE tablename ( colname integer DEFAULT nextval('tablename_colname_seq') NOT NULL );
コメント
- XMLDBでいけてるやつ知らない? -- nabeshin (2006-04-19 00:04:50)
- XMLDB使ったことないのよね。使ったことないけどApacheのXindiceくらいしか知らないや。ゴメン。 -- 管理人 (2006-04-19 09:35:40)