3.6 SQLノートブックの使用

SQLノートブックは、SQL Developer Extension for VS Codeの強力な機能であり、ユーザー定義レポートと同様に、Markdownを使用して一連の問合せを作成するSQLワークシートの代替手段となります。

SQLノートブックではYAMLベースの構造を採用しており、人間が読みやすく、かつマシンで解析可能な構造を実現しています。これにより、構造化されたノートブック形式でSQLおよびPL/SQLコードを作成、編成および実行できます。また、レポートの編成、関連する問合せのグループ化および意味のあるコメントの追加に役立つMarkdownを作成することもできます。

3.6.1 SQLノートブックの操作

SQLノートブックを使用すると、構造化されたノートブック形式で問合せブロックを実行し、結果を表示できます。新しいノートブックを作成することも、既存のノートブックを編集することもできます。

新しいSQLノートブックを開く

「ファイル」メニューから「新規ファイル」を選択した後、「Oracle SQLノートブック」を選択します。
sql_notebook.pngの説明が続きます
図sql_notebook.pngの説明

VS Codeで、問合せを入力するためのコード・セルとともに新しいSQLノートブック・エディタが開きます。SQLノートブックのデフォルトの拡張子は.sqlnbです。SQLノートブックを実行するには、接続にアタッチする必要があります。
new_sql_notebook_noconnection.pngの説明が続きます
図new_sql_notebook_noconnection.pngの説明

接続へのSQLノートブックのアタッチ

SQLノートブックが開いたとき、デフォルトではどの接続にもアタッチされていません。接続をアタッチするには、SQLノートブック・エディタの右下隅にある接続アイコンをクリックします。
  1. 右側のペインで、「アタッチされている接続はありません」ラベルをクリックします。

    「検索」ボックスに、使用可能な接続のリストが表示されます。
    sql_notebook_connection_searchbox.pngの説明が続きます
    図sql_notebook_connection_searchbox.pngの説明

  2. 接続を選択します。

    これで、選択した接続にSQLノートブックがアタッチされます。右下隅に接続の名前が表示されます。

あるいは、左側のペインで接続名を右クリックして、「SQLノートブックを開く」を選択することもできます。この場合、ノートブックはデフォルトで専用のデータベース接続にアタッチされます。
open_sql_notebook_connection.pngの説明が続きます
図open_sql_notebook_connection.pngの説明

SQLノートブックの保存

「ファイル」メニューから、「別名保存」を選択するか、[Ctrl] + [Shift] + [S]を押します。SQLノートブックにわかりやすいファイル名を指定して保存します。ノートブックは.sqlnbファイルとして保存されます。

既存のSQLノートブックを開く

「ファイル」メニューから、「ファイルを開く」を選択するか、[Ctrl]+ [O]を押します。ファイル(.sqlnb)を参照して開きます。ノートブックを開いたら、接続に再度アタッチする必要があります。詳細は、「接続へのSQLノートブックのアタッチ」を参照してください。

SQLノートブックでは、エディタで使用可能なボタンを使用して次の操作を実行できます:
  • 「コード」([Ctrl] + [Enter])は、新しいコード・セルを追加します。これにより、1つ以上のSQL文、PL/SQL文およびスクリプトを実行できます。詳細は、「コード・セルの使用」を参照してください。
  • 「Markdown」は、新しいMarkdownセルを追加します。これにより、Markdown形式のテキストを入力できます。詳細は、「Markdownセルの使用」を参照してください。
  • 「すべて実行」は、SQLノートブック内のすべてのセルを順次実行します。
  • 「すべての出力をクリア」は、すべての出力をクリアします。

3.6.1.1 コード・セルの使用

コード・セルには、実行するSQL文、PL/SQL文またはスクリプトを1つ以上入力できます。

1つのコード・セルで複数の問合せを順次実行したり、DDL操作とDML操作を組み合せたり、設定スクリプトに続いてデータ問合せを実行できます。動的問合せの実行にバインド変数および置換変数を使用することもできます。また、スクリプト実行の詳細な出力も表示されます。

複数の文の場合、各SQL文は、セミコロンまたは(改行後の)スラッシュ(/)のいずれかで終了する必要があり、各PL/SQL文は、改行後にスラッシュ(/)で終了する必要があります。表やビューなど、いくつかの種類のオブジェクトは、「接続」ナビゲータからドラッグし、コード・セルにドロップできます。このとき、「オブジェクト名」、「挿入」、「削除」、「更新」、「選択」というオプションが表示されます。SELECTを選択すると、その表またはビューのすべての列を使用して、SELECT文が作成されます。その後、この文を編集できます。

新しいコード・セルを追加するには、「コード」をクリックします。コード・セルで実行する文を入力します。入力を開始すると、コンテキスト依存のポップアップ・ウィンドウが表示され、コードの自動補完を支援します。[Esc]をクリックすると、ポップアップ・ウィンドウをクローズできます。

「セルの実行」([Ctrl] + [Alt] + [Enter])をクリックします。
code_cell.pngの説明が続きます
図code_cell.pngの説明

出力はグリッド形式で表示されます。
code_cell_output.pngの説明が続きます
図code_cell_output.pngの説明

列ヘッダーをクリックしてデータをソートしたり、ドラッグして列のサイズを出力にあわせて変更したり、レコードの詳細全体を表示したり、出力データをエクスポートできます。SQLノートブックの主な利点は、単一のコード・セル、連続するコード・セルのグループまたはノートブック全体を実行できることです。
code_cell_icons.pngの説明が続きます
図code_cell_icons.pngの説明

コード・セルでは、次のアイコンを使用できます:
  • 「上のセルの実行」は、先行するすべてのコード・セルを実行します。
  • 「下のセルの実行」は、現在のセルとその下にあるすべてのコード・セルを実行します。
  • 「セルの分割」は、現在のコード・セルを2つの別個のセルに分割します。
  • 「セルの削除」は、選択されたコード・セルを削除します。
  • 「その他のアクション...」は、一般的なタスクを実行するためのその他のオプションを提示します。詳細は、「その他のセル構成オプション」を参照してください。

単一レコードの表示

出力行を右クリックし、「単一レコード・ビュー」を選択してその詳細を表示します。
single_view_record.pngの説明が続きます
図single_view_record.pngの説明

選択した行の詳細が表示されます:
single_view_record_output.pngの説明が続きます
図single_view_record_output.pngの説明

「<<」「<」「>」および「>>」ボタンを使用して、それぞれ最初のレコード、前のレコード、次のレコードおよび最後のレコードに移動できます。「閉じる」をクリックしてダイアログ・ボックスを閉じます。

データのエクスポート

グリッドを右クリックし、「エクスポート」を選択して、出力データを複数の形式でエクスポートします。
export_data.pngの説明が続きます
図export_data.pngの説明

「エクスポート」ダイアログ・ボックスの設定を構成することで、出力のエクスポートに必要な形式を選択できます。「エクスポート」をクリックして出力をエクスポートします。
export_data_dialog.pngの説明が続きます
図export_data_dialog.pngの説明

出力のエクスポートには、次の構成を使用できます:
  • 「形式」には、出力をエクスポートできる形式がリストされます。使用可能なオプションは、「CSV」、「区切り」、「固定」、「HTML」、「挿入」、「JSON」、「テキスト」、「XML」、「JSON形式」、「ローダー」です
  • 「行の終了文字」には、エクスポート用の行終了文字オプションがリストされます。使用可能なオプションは、「UNIX/Mac LF」、「Windows CR LF」、「CR」です
  • 「ヘッダー」は、このチェック・ボックスが選択されている場合、エクスポートされた出力にヘッダーを表示します。
  • 「左囲み」には、使用可能な左囲みオプション(二重引用符(")、一重引用符(')、開きカッコ(()、開き中カッコ({)、開き大カッコ([)が表示されます。
  • 「右囲み」には、使用可能な右囲みオプション(二重引用符(")、一重引用符(')、開きカッコ())、開き中カッコ(})、開き大カッコ(])が表示されます。
  • 「エクスポート先」には、エクスポートされた出力の宛先がリストされます。使用可能なオプションは、「ファイル」、「クリップボード」です
  • 「ファイル」を使用すると、出力をエクスポートする宛先ファイルを参照および選択できます。

3.6.1.2 Markdownセルの使用

Markdownセルでは、書式設定されたテキスト、説明およびドキュメントをノートブックに挿入できます。これにより、ノートブックの明確性と読みやすさが向上します。たとえば、Markdownを使用して問合せのグループ化、コメントの追加およびコードの説明の指定ができます。

新しいMarkdownセルを追加するには、「Markdown」をクリックします。Markdown形式のテキストを入力し、「セルの編集の終了」([Ctrl] + [Alt] + [Enter])をクリックします。
mardown_cell_input.pngの説明が続きます
図mardown_cell_input.pngの説明

出力は次のように表示されます:
mardown_cell_output.pngの説明が続きます
図mardown_cell_output.pngの説明

Markdownセルでは、次のアイコンを使用できます:
  • 「セクション内のセルの実行」は、特定のMarkdownセクションの下にグループ化されたすべてのコード・セルを一度に実行します。Markdownヘッダー(# Header1、## Header2など)はセクションを作成し、それらの間のコード・セルはそのセクションの一部として扱われます。
  • 「セルの編集の終了」([Ctrl] + [Alt] + [Enter])は、Markdownセルの編集を終了し、書式設定された出力をレンダリングします。
  • 「セルの分割」([Ctrl] + [K]、[Ctrl] + [Shift] + [\])は、現在のセルを2つの別個のMarkdownセルに分割します。
  • 「セルの削除」([Delete])は、選択されたセルを削除します。
  • 「その他のアクション...」は、一般的なタスクを実行するためのその他のオプションを提示します。詳細は、「その他のセル構成オプション」を参照してください。

3.6.1.3 その他のセル構成オプション

この項では、セルに対して実行できるその他のアクションの概要を示します。

コード・セルおよびMarkdownセルのアクション



  • 「セルの切取り」は、選択されたセルを削除し、その内容を貼り付けるために保存します。
  • 「セルのコピー」は、選択されたセルをコピーします。
  • 「セルの貼り付け」は、すでに切り取られたセルまたはコピーされたセルを貼り付けます。
  • 「セルの挿入」は、選択されたセルの上または下に新しいコード・セルまたはMarkdownセルを挿入します。
  • 「セルをMarkdownに変更」は、選択されたコード・セルをMarkdownセルに変更します。このオプションは、コード・セルでのみ使用できます。
  • 「前のセルと結合」([Shift] + [Alt] + [Windows] + [j] )は、選択されたセルを前のセルと結合します。
  • 「次のセルと結合」([Alt] + [Windows] + [j] )は、選択されたセルを次のセルと結合します。
  • 「選択したセルの結合」は、選択されたセルを結合します。
  • 「セルを下にコピー」([Shift] + [Alt] +下矢印)は、選択されたセルを直下に複製します。
  • 「セル行番号の表示」は、セル内の行番号を表示または非表示にします。
  • 「セル・ツールバーの位置の切替え」は、ツールバーをセルの左上隅または右上隅に移動します。