- 締切済み
Oracle:Oracleシーケンスとは?
Oracleシーケンスとは何者なのでしょうか? なにやら番号のようなものですよねえ・・・たぶん ということで以下について教えて下さい。 1.シーケンスとは何ですか? 2.Oracleシーケンスとは何ですか? 3.どのようにOracleシーケンスを取得するのですか? 以上、宜しくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- riezo
- ベストアンサー率0% (0/0)
こんにちは。 3. の質問に関してですが、sequence の今の値を取得するには currval を使用します。次の値を取るには nextval を使います。 Oracle 関係の書籍がたくさん出ているので一度読まれてはいかがでしょうか。基本的なことなのでどの本にも載っていると思います。 ちなみに、sequence は初期値、増分も設定できます。
- paz777
- ベストアンサー率47% (77/163)
こんにちは。 補足です。 過去にOracleシーケンスの掲示がありましたので、 一度参考にしてみて下さい。 ではでは・・・
お礼
補足ありがとうございます。 ACCESSにはオートナンバー型というものがあるんですね!勉強になります。
- sh0g0
- ベストアンサー率40% (2/5)
シーケンスオブジェクトはロールバックの対象にはなりません。どうしても欠番を出したくないときはよく考えてデータベースを更新する必要があります。
お礼
ご回答ありがとうございます。 ロールバックの対象にならないということを生かせる場面では非常に有効的ですよね!
- mfuku
- ベストアンサー率50% (173/345)
「順序」のことを言います。 平たく言えば、Oracleが用意しているカウンターです。 一意に採番するコードを生成する際などに使用します。 CREATE SEQUENCE文で「順序(シーケンス)」を生成し、作成(CREATE)されたシーケンスオブジェクトから、新たな値を取り出すことが可能になります。
お礼
ご回答ありがとうございます。 なるほど、確かにSQL*PLUSでCREATE SEQUENCE~を作成すると 順序が作成されましたということをいわれますね。 Oracleが用意しているカウンターというのは非常にわかりやすい表現でした。
お礼
ご回答ありがとうございます。 この質問を載せた後にがさごそ書籍を見渡してみたところriezoさんのご回答などがごにょごにょと記載されている ものを発見しました。便利なものがあるのだなあと今更ですが思ってしまいました。