備忘録

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

シーケンス

Oracle11gからPL/SQLでのSEQUENCE採番が便利に

oracle11gからPL/SQLでシーケンスが使いやすくなった。
今までは、dual表をを引っ掛ける必要があったが、直接参照できる様になった。

declare
seq pls_integer;
begin
seq := seq_xxx.nextval;
end;

みたいな感じで使える。

マニュアルには性能的にこっちの書き方が良い様なことが書いてあったが、10万件ループでとった限りは違いは感じられなかった。
コンパイラがdualを使った書き方に変えてるだけじゃないの?って思える。
insert の時に seq_xxx.nextval で直接入れている時にも、AWRのレポートを見ると、insert 文とは別に dual も引っ掛けている。
これと同じでないか

コメント

コメントの投稿


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

トラックバック

トラックバック URL
http://ncdkayak.blog.fc2.com/tb.php/7-9909c134
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。