fc2ブログ

2012-01-22(Sun)

postgreSQLのnextvalとsetval

nextvalとsetvalの使い方例をメモっておく。

nextval-->シーケンスを進める。
setval-->シーケンスの現在値を設定する。

自動的にprimary idに番号を割り付けたい場合は以下の通りにするといい。
(例)
-- Create Table
CREATE TABLE node_t (
id integer NOT NULL,
idnode integer,
label text,
url text
);


ALTER TABLE public.node_t OWNER TO postgres;

-- Create Sequence
CREATE SEQUENCE node_t_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;

ALTER TABLE public.node_t_id_seq OWNER TO postgres;
ALTER SEQUENCE node_t_id_seq OWNED BY node_t.id;

-- Using setval(At First, Set Number 1)
SELECT pg_catalog.setval('node_t_id_seq', 1, true);

-- Using nextval(Auto Increment)
ALTER TABLE node_t ALTER COLUMN id SET DEFAULT nextval('node_t_id_seq'::regclass);


参考:
PostgreSQL徹底入門 第3版
PostgreSQL全機能リファレンス (アドバンストリファレンスシリーズ)
関連記事
スポンサーサイト



コメントの投稿

管理者にだけ表示を許可する

コメント

プロフィール

kumagonjp2

Author:kumagonjp2
Python,Django,R,Mongo,MySQL,Struts,Spring,データマイニングなどサーバー関係のメモを残していきます。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
雪が3Dで降るブログパーツ ver2

マウスで見る方向変えられます

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR