JetBrains Rider 2024.1 ヘルプ

SQL 解決スコープ

SQL 解決スコープを使用すると、フォルダーまたはファイルを特定のデータソースに関連付けることができます。このマッピングを設定すると、関連付けられたデータソースに対応するコーディング支援を使用できます。

SQL 解決スコープが設定されている場合、IDE は関連するデータソースに適したデータベースオブジェクトを提案します。2 つのデータソースがあると考えてください。1 つは本番データベース(PostgreSQL 14)用で、もう 1 つはテストデータベース(PostgreSQL 12.8)用です。両方のデータベースのテーブルの名前は同じですが、データベースの構造は異なります。SQL ファイルをいずれかのデータベースに個別に関連付けることができます。

postgresql_12.sqlPostgreSQL 12.8 データソースにマップし、postgresql_14.sqlPostgreSQL 14 にマップしてみましょう。

両方のデータソースに actor テーブルがありますが、このテーブルは異なるスキーマ(guest.public.actorpostgres.public.actor)に格納されています。actor テーブルを修飾しようとしたり、コード補完を使用したりしようとすると、補完の提案は対応するデータソースに関連付けられます。

また、これらのファイル間でクエリを交換すると、エラーが発生します(14-15 行)。PostgreSQL 14 には guest.public にテーブルがなく、PostgreSQL 12.8 には postgres スキーマがないためです。

SQL 解決スコープを追加する

  1. Ctrl+Alt+S を押して設定を開き、言語 & フレームワーク | SQL 解決スコープを選択します。

  2. 追加ボタンをクリックしてください。

  3. ファイルブラウザーで、データソースに関連付けるファイルまたはディレクトリに移動します。

  4. 開くをクリックします。

  5. 解決スコープ列のセルをクリックして、このディレクトリまたはファイルに関連付けるデータソースを選択します。

    プロジェクトコードで SQL コーディング支援を使用するには、言語インジェクションを有効にします。

設定

項目

説明

プロジェクトマッピング

データベースオブジェクトの非修飾名を解決するために、プロジェクト内のすべての SQL ファイルによってデフォルトで使用されるデータソース、データベース、スキーマのセット。

以下の表にマッピングが設定されていない場合、ファイルとディレクトリはプロジェクトマッピングを使用します。

パス

データソースまたはデータソースのセットに関連付けるファイルまたはディレクトリへのパス。

解決スコープ

ファイルまたはディレクトリに関連付けられるデータソースまたはデータソースのセット。

すでにデータソースに関連付けられているファイルを含むディレクトリのマッピングを追加すると、IDE に通知ダイアログが表示されます。このダイアログでは、子が親のスコープを継承するか、スコープを保持するかを選択する必要があります。