埋込みSQLの構文の説明には、わかりやすい構文図を使用しています。これらは、正しい構文を示す線と矢印の図です。使用した経験がなくても、心配しないでください。この項では必要な知識を説明します。
構文図の論理的な流れを理解すれば、役に立つガイドになります。構文図をたどれば、どんな埋込みSQL文も検証または作成できます。
構文図は、線と矢印を使用して、文を作成するためのコマンド、パラメータおよびその他の言語要素の並べ方を示します。各図を左から右に矢印が指す方向にたどってください。次の記号が使用されています。
コマンドおよびその他のキーワードは、大文字で表記されています。パラメータは小文字で表記されています。演算子、デリミタおよび終了記号は普通に表記されています。「はじめに」で定義されている表記規則に従い、セミコロンで文を終了します。
構文図に複数のパスがある場合は、任意のパスを選択できます。
キーワード、演算子またはパラメータの選択肢が複数ある場合は、オプションを縦に並べて示します。次の例では、まず縦方向を選択した後、横方向に進めます。
この図は、次の文がすべて有効であることを示しています。
EXEC SQL WHENEVER NOT FOUND ... EXEC SQL WHENEVER SQLERROR ... EXEC SQL WHENEVER SQLWARNING ...
必須のキーワードおよびパラメータは、単一または代替の選択肢を縦に並べた状態で示します。単独の必須キーワードおよびパラメータはメイン・パス、つまり現在たどっている横線上に現れます。次の例では、cursorが必須パラメータです。
emp_cursorという名前のカーソルがある場合、この構文図によると、次の文は有効です。
EXEC SQL CLOSE emp_cursor;
複数のキーワードまたはパラメータがメイン・パス上に縦に並んでいる場合は、その中のいずれかが必須になります。つまり、キーワードやパラメータを1つ選択する必要がありますが、それはメイン・パス上にあるものでなくてもかまいません。次の例では、4つのアクションのうち1つを選択する必要があります。
キーワードおよびパラメータがメイン・パスの下に並べられている場合は、オプションです。つまり、それらの1つを選択する必要はありません。次の例では、上方向にたどらずに、メイン・パスを続けることができます。
この図では、oracle2の名前のデータベースが存在する場合、次の文はすべて有効です。
EXEC SQL ROLLBACK; EXEC SQL ROLLBACK WORK; EXEC SQL AT oracle2 ROLLBACK;
ループは、その中の構文を何回でも繰り返せることを示します。次の例では、column_nameがループの中にあります。このため、列名を1つ選択した後で、繰り返し戻って別の列名を選択できます。
DEBIT
、CREDIT
およびBALANCE
が列名の場合、この図によれば、次の文はすべて有効です。
EXEC SQL SELECT DEBIT INTO ... EXEC SQL SELECT CREDIT, BALANCE INTO ... EXEC SQL SELECT DEBIT, CREDIT, BALANCE INTO ...
複数パーツの図では、メイン・パスがすべて端から端まで続いていると考えます。次の例は2パーツの図です。
この図は、次の文が有効であることを示しています。
EXEC SQL PREPARE sql_statement FROM :sql_string;