プライマリ・コンテンツに移動
SQL*Plus®ユーザーズ・ガイドおよびリファレンス
リリース1 (12.1)
B71396-03
目次へ移動
目次
索引へ移動
索引

前
次

SQLコマンドの実行

SQLコマンド言語を使用すると、データベース内のデータを操作できます。個々のSQLコマンドについては、『Oracle Database SQL言語リファレンス』を参照してください。

  1. コマンド・プロンプトで、コマンドの1行目を次のように入力します。
    SELECT EMPLOYEE_ID, LAST_NAME, JOB_ID, SALARY

    誤って入力した場合は、[Back Space]を使用して消去し、再度入力します。入力終了後、[Return]を押して次の行へ移動します。

  2. 2行目の入力を求める「2」が表示されます。コマンドの2行目を次のように入力します。
    FROM EMP_DETAILS_VIEW WHERE SALARY > 12000;

    セミコロン(;)は、コマンドの終わりを意味します。[Return]を押すか「実行」をクリックします。コマンドが処理され、結果が表示されます。

    EMPLOYEE_ID LAST_NAME                 JOB_ID             SALARY
    ----------- ------------------------- ---------- --------------
            100 King                      AD_PRES           $24,000
            101 Kochhar                   AD_VP             $17,000
            102 De Haan                   AD_VP             $17,000
            145 Russell                   SA_MAN            $14,000
            146 Partners                  SA_MAN            $13,500
            201 Hartstein                 MK_MAN            $13,000
    
    6 rows selected.

    結果および取得した行数が表示された後、SQL*Plusコマンドラインに再度コマンド・プロンプトが表示されます。入力に誤りがあって結果が表示されなかった場合は、コマンドを再入力します。

    ヘッダーは、PAGESIZEというシステム変数の設定に応じて、繰り返し出力される場合があります。問合せの結果が、使用可能なページ幅に収まらない場合があります。システム変数LINESIZEを使用して、文字の出力幅を設定できます。「ページ・サイズの設定」を参照してください。通常、LINESIZEはコマンドラインでは80に設定されています。取得したレコード件数を示すメッセージが表示されるかどうかは、システム変数FEEDBACKの設定によって異なります。詳細は、「コマンドの実行に影響するシステム変数」を参照してください。

例4-3 SQLコマンドの入力

この例では、SQLコマンドを入力して実行し、各従業員の従業員番号、名前、職種および給与をEMP_DETAILS_VIEWビューに表示します。

SQLコマンドの構文について

話し言葉に、単語を組み合せて文にする方法を規定する構文規則があるように、SQL*Plusにも、単語を組み合せてコマンドにする方法を規定する構文規則があります。 このようなコマンドをSQL*Plusで実行するには、それらの規則に従う必要があります。

1つのSQLコマンドの複数行への分割について

SQLコマンドは、個々の単語の途中で改行しないかぎり、任意の位置で複数行に分割できます。そのため、「**INTERNAL XREF ERROR**」で入力した問合せは、次に示すように3行で入力できます。

SELECT EMPLOYEE_ID, LAST_NAME, JOB_ID
FROM EMP_DETAILS_VIEW
WHERE SALARY>12000;

このマニュアルでは、ほとんどのSQLコマンドが句に分割されており、1つの句が1行になっています。たとえば、「**INTERNAL XREF ERROR**」では、SELECT句とFROM句が個別の行に配置されています。多くの場合、これが最も見やすい方法ですが、コマンドを自分にとって最も読みやすくするためには、どのように行を分割してもかまいません。

SQLコマンドの終了について

SQLコマンドは、次に示す3つの方法のいずれかによって終了できます。

  • セミコロン(;)を入力する

  • 1行にスラッシュ(/)のみを1つ入力する

  • 空白行を入力する

セミコロン(;)は、コマンドを実行することをSQL*Plusに通知するために使用します。「**INTERNAL XREF ERROR**」に示すように、コマンドの最終行の末尾にセミコロンを入力して、[Return]を押すか「実行」をクリックします。SQL*Plusによって、コマンドが処理され、SQLバッファに格納されます。詳細は、「SQLバッファ」を参照してください。セミコロンを入力する前に誤って[Return]を押した場合は、コマンドの次の行の入力を促す行番号がSQL*Plusプロンプトに表示されます。コマンドを実行するには、セミコロンを入力して、再度[Return]を押すか「実行」をクリックします。

スラッシュ(/)のみの行を使用しても、SQL*Plusにコマンドの実行を指示できます。コマンドの最終行の末尾で[Return]を押します。SQL*Plusプロンプトに次の行の行番号が表示されます。スラッシュを入力し、再度[Return]を押すか「実行」をクリックします。SQL*Plusで、コマンドが実行され、バッファに格納されます。

SQL文またはスクリプト内に空白行を使用すると、コマンド入力の終了後、SQL*Plusでそのコマンドの実行が待機されます。コマンドの最終行の末尾で[Return]を押します。SQL*Plusプロンプトに次の行の行番号が表示されます。

注意:

SET SQLBLANKLINESコマンドを使用して、SQL文内での空白行の表示形式および動作を変更できます。空白行の動作の変更方法の詳細は、「SET」コマンドを参照してください。

このようにコマンドを実行するには、再度[Return]を押して、SQL*Plusのコマンド・プロンプトを表示します。コマンドは、実行されないままSQLバッファに格納されます。詳細は、「SQLバッファ」を参照してください。引き続き別のSQLコマンドを入力すると、バッファ内にある前のコマンドは上書きされます。