Oracle Master

順序(SEQUENCE)に関する注意点

投稿日:2009年8月8日 更新日:

順序は以下のように作成する。

CREATE SEQUENCE seq_no START WITH 100 MAXVALUE 200 CYCLE;

直近に採番された順序を取得するには、順序名.CURRVALで取得するが、一度も順序を採番していない場合は、エラーが発生する。

順序の変更はALTER SEQUENCEコマンドを使用しますが、以下の点に注意する必要がある。

  • 初期値(START WITH)は変更できない。
  • 採番済みの順序より小さい最大値(MAXVAUE)に変更できない。
  • 最小値(MINVALUE)はいつでも変更可能。
  • 順序の削除は、所有者もしくはDROP ANY SEQUENCE権限を持つユーザのみである。

 

順序で使用する擬似列NEXTVALとCURRVALには使用できない個所がある。

  • ビューのSELECT句
  • DISTINCTを含むSELECT文
  • GROUP BYを含むSELECT文
  • HAVINGを含むSELECT文
  • ORDER BYを含むSELECT文
  • 副問合せ
  • CREATE TABLEのDEFAULT

必ず試験に出るので、覚えよう。

広告

広告

-Oracle Master


comment

関連記事

no image

リテラル文字とは?

Oracleでのリテラル文字とは、SELECT句に含まれる、 ・文字 ・数字 ・日付 のことを言う。文字と日付のリテラル文字はシングルクォーテーション(例:’文字’)で囲む必要 …

no image

Oracle Databaseのパッチセット取得方法

SQL Serverやオープンソースのデータベースの修正パッチは無償で入手することができます。SQL Serverの場合はマイクロソフトのホームページからダウンロードすることができます。しかし、Ora …

no image

Windows上にインストールしたOracleの優先資格証明の設定ができない (11g)

Enterprise Managerで優先資格証明を設定しようとしましたが、「ユーザーoracleとしてのServer01への接続に失敗しました。」とエラーメッセージが表示されて、正常に優先資格証明を …

no image

Linux – Oracle Universal Installerが文字化けする

Linux環境でOracle Universal Installerが文字化けする場合、以下の通りに対応する。 # LANG=C # export LANG このようにすることで、OUIは英語表記にな …

no image

SQL*Plusの画面の調整 – 文字が途中で折り返してしまう

SQL*Plusで列の長い表をSELECTしたら、画面の右端で表が折り返してしまいます。SQL*Plus画面の幅を広くしてみましたが、それにも関らず、画面の途中で表が折り返してしまいます。その場合は、 …

広告

転職