イントロスペクションレベル
データベースにオブジェクト(テーブル、スキーマ、データベースなど)が多数存在する場合、イントロスペクションに長時間かかることがあります。一部のデータベースではシステムカタログの処理速度が比較的遅く、ユーザーが高速カタログにアクセスする権限を持たない場合、イントロスペクションはさらに遅くなります。
通常、日常業務やコーディング支援では、すべてのオブジェクトのソースを読み込む必要はありません。多くの場合、データベース名さえあれば、適切なコード補完とナビゲーションを実現できます。
JetBrains Rider はイントロスペクションレベルを使用して、データベースのサイズに応じてロードされるメタデータの量を自動的に調整します。また、タスクに最適なレベルを手動で選択することもできます。
イントロスペクションレベルは次のデータベースでサポートされています。
Oracle
MySQL
MariaDB
Microsoft SQL Server
PostgreSQL
Amazon Redshift
JetBrains Rider には次のイントロスペクションレベルがあります。
レベル | 手動で設定されたレベル | 継承されたレベル | 説明 |
|---|---|---|---|
レベル 1 | | | インデックス列の名前とプライベートパッケージ変数の名前を除く、サポートされているすべてのオブジェクトの名前とその署名。 列データ型は |
レベル 2 | | | データベースオブジェクトのソースコードを除くすべて。例: このレベルでルーチンを開くと、その宣言は表示されますが、本体は表示されません。 |
レベル 3 | | | すべて。 |
アイコンはイントロスペクションレベルを表します。ピルがいっぱいになるほど、レベルが高くなります。また、色も重要です。青いアイコンはイントロスペクションレベルが直接設定されていることを意味し、灰色は継承されていることを意味します。
JetBrains Rider で利用可能な一部のデータベースでは、IDE はフラグメントイントロスペクションをサポートしています。これは、単一のオブジェクトのメタデータを取得する機能です。これは、メタデータ(通常はソースコード)が明示的に要求される状況で役立ちます。たとえば、ビューをダブルクリックした際にイントロスペクションレベルが低い場合、JetBrains Rider は同時にソースコードを要求します。
単一オブジェクトのソースコードをリフレッシュする
オブジェクトを右クリックし、
リフレッシュを選択します。または、Ctrl+F5 を押します。

イントロスペクションレベルのデフォルト
デフォルトでは、JetBrains Rider は、スキーマタイプとオブジェクトの数に基づいて、各スキーマのデフォルトイントロスペクションレベルを自動的に設定します。各スキーマについて、イントロスペクターはオブジェクトをカウントし、次のしきい値を使用してイントロスペクターレベルを選択します。N はオブジェクトの数です。
スキーマ | レベル 3 | レベル 2 | レベル 1 |
|---|---|---|---|
カレント | N <= 1000 | N <= 3000 | さもないと |
非現行 | なし | N <= 3000 | さもないと |
システム | なし | N <= 100 | さもないと |
デフォルトを変更するには、データソースおよびドライバーダイアログ (Shift+Enter) を開き、に移動して、データソースのデフォルトのイントロスペクションレベルを選択します。

イントロスペクションレベルの変更
データベース全体または特定のスキーマのいずれかにイントロスペクションレベルを設定できます。スキーマはデータベースからイントロスペクションレベルを継承しますが、スキーマごとにレベルを個別に設定できます。
他のデータベースオブジェクトの場合、イントロスペクションレベルコンテキストサブメニューにはオブジェクトの現在のイントロスペクションレベルが表示されます。
デフォルトでは、イントロスペクションレベルのアイコンは無効になっています。個別に有効にすることができます: スキーマとその子(テーブル、ビュー、ルーチンなど)。
イントロスペクションレベルのアイコンを有効にする
データベースツールウィンドウのツールバーで、
表示オプションをクリックし、イントロスペクションレベルのアイコンを選択します。


イントロスペクションレベルを変更する
データベースツールウィンドウでオブジェクトを右クリックし、イントロスペクションレベルメニューを選択します。
イントロスペクションレベルメニューで、適用するレベルを選択します。
子は、親に設定されたレベルを継承します。
データソース設定で自動同期オプションが有効になっている場合、イントロスペクションレベルを変更するとすぐにイントロスペクションが実行されます。このオプションの詳細については、データソースとドライバーの自動同期ダイアログを参照してください。
関連ページ:
メタデータとイントロスペクション
メタデータには、データベースオブジェクト、その構造、データベースオブジェクトのソースコードなどに関する情報が含まれます。JetBrains Rider はこの情報を使用して、データベースツールウィンドウにオブジェクトを表示し、DDL を表示し、補完時に候補を表示し、その他のコーディング支援、ナビゲーション、検索機能を提供します。JetBrains Rider では、データベースのメタデータを取得する方法が 2 つあります。ミニカタログとイントロスペクションです。ミニカタログシステムスキーマのミニ...
スキーマ
JetBrains Rider は、表示対象として選択したスキーマを表示します。これは、スキーマが多数ある場合に便利です。また、この方法を使用すると、イントロスペクションするスキーマを定義できます。イントロスペクション中、JetBrains Rider はデータベースからメタデータをロードし、後でこのデータを使用します。スキーマ () は、データベースツールウィンドウにあります。その他のノードおよびオブジェクトアイコンのリファレンスについては、データベースウィンドウトピックのデータソースとその要...
セッション
データベースツールと SQL プラグインを有効にするこの機能は、JetBrains Rider にデフォルトでバンドルされ有効になっているデータベースツールと SQL プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、データベースツールおよび SQL プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。JetBrains Rider では、データベース...
データソースおよびドライバーダイアログ
データベースツールと SQL プラグインを有効にするこの機能は、JetBrains Rider にデフォルトでバンドルされ有効になっているデータベースツールと SQL プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、データベースツールおよび SQL プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。データソースおよびドライバーダイアログにアクセスす...
システムカタログから事前にイントロスペクトされたオブジェクト
システムカタログとは、リレーショナルデータベース管理システム(DBMS)がテーブルや列、組み込み関数、その他のスキーマオブジェクトに関する情報を保存する場所です。IDE は、コード補完やその他のコーディング支援操作にこのカタログのデータを使用します。システムスキーマは、スキーマ選択ダイアログにの稲妻アイコンで表示されます。これらのスキーマを選択しない場合、JetBrains Rider はそれらのスキーマをイントロスペクトせず、データベースツールウィンドウにも表示しません。ただし、スキーマオブジ...