PhpStorm 2026.1 Help

クエリを実行する

データベースツールおよび SQL プラグインを有効化

この機能は、PhpStorm にデフォルトでバンドルされ有効化されている データベースツールおよび SQL プラグインに依存しています。 関連機能が利用できない場合は、プラグインを無効化していないことを確認してください。

  1. Ctrl+Alt+S を押して設定を開き、 プラグイン を選択します。

  2. インストール済み タブを開き、 データベースツールおよび SQL プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。

クエリは、ショートカット、ツールバーボタン、コンテキストメニュー、実行/デバッグ構成を使って実行できます。 クエリコンソールsスクラッチファイルユーザーファイルから実行できます。

クエリ結果を表示する場所や方法について詳細は、 クエリ結果を参照してください。

ステートメントとプロシージャーを実行する

クエリコンソールでステートメントを実行する

コードを入力して実行できるターミナルとして、 クエリコンソールを捉えるとよいでしょう。

  1. データベース ツールウィンドウで、データソースをクリックします。

  2. クエリコンソール を開くには、 F4 を押してください。 クエリコンソールの操作方法について詳しくは、 クエリコンソール を参照してください。

  3. 実行したいステートメントを入力するか貼り付けます。

  4. ツールバーの 実行ボタン実行 をクリックします。 あるいは、 Ctrl+Enter を押します。

    複数のステートメントがある場合は、すべてのステートメントを実行するか、単一のステートメントを実行するかを選択します。 候補リストには、常にすべてのステートメントを実行するための項目が含まれています。

    クエリを実行する

開いているファイルからステートメントを実行する

PhpStorm では、ファイルを開いて実行できます。 ファイルサイズの制限は 20 MB です。 20 MB を超えるファイルを開くと、ファイルの最初の 2.5 MB のみが表示されます。 ファイルは SQL ファイルタイプに関連付けられている必要があります。 ファイルタイプの関連付けの詳細については、 ファイルタイプの関連付けトピックを参照してください。

  1. プロジェクト ツールウィンドウ(表示 | ツールウィンドウ | プロジェクト )を開き、SQL ファイルをダブルクリックします。

    PhpStorm でディレクトリやファイルをアタッチする方法の詳細は、 ユーザーファイル を参照してください。

  2. 実行したいステートメントをクリックしてください。

    また、実行するコードのフラグメントを選択(ハイライト)できます。 サブクエリまたはステートメントのグループにすることができます。 PhpStorm は選択部分のみを実行します。

  3. ツールバーの 実行 ボタン(実行ボタン )をクリックしてください。 あるいは、 Ctrl+Enter を押します。

    クエリ実行設定をカスタマイズするには、 カスタマイズ リンクをクリックしてください。 または、 Ctrl+Alt+S を押して設定を開き、 ツール | データベース | クエリ実行 に移動します。 。

  4. (オプション) SQL ファイルがデータソースにアタッチされていない場合は、 <データソース> リストでアタッチするデータソースを選択します。

    SQL ファイルをデータソースに添付する方法の詳細については、「データソースの添付 」を参照してください。

  5. ステートメント ウィンドウで、 Enter を押して、選択したステートメントを実行します。 他のエントリを切り替えて、別のステートメントのセットを実行できます。 実行しようとしているステートメントは、クエリエディターでハイライトされます。

    スクリプトファイルを実行する別の例については、「youtube.com の次のビデオ(英語) 」を参照してください。

ストアドプロシージャを実行する

ストアドプロシージャとは、名前が割り当てられた SQL 文のセットです。 ストアドプロシージャは、PostgreSQL、Microsoft SQL サーバー、Oracle、MySQL で実行できます。

  1. 実行するストアド関数を右クリックし、 関数の実行 を選択します。

  2. ルーチンの実行 ウィンドウで、必要なすべてのパラメーター値を入力し、 OK をクリックします。

    必要に応じて、 実行元 チェックボックスを選択し、保存された関数を実行するファイルまたはコンソールを選択します。

    ストアドプロシージャを実行する

SELECT ステートメントを実行し、結果をファイルに保存する

  1. (オプション) ファイルがデータソースに接続されていない場合は、ツールバーのデータソースのリストからデータソースを選択します。 次に、 セッション リストから接続セッションを選択します。

    接続セッションの詳細については、 セッション を参照してください。

  2. 選択 ステートメントを右クリックします。

  3. ファイルへ実行 を選択して、出力フォーマットを選択してください。

  4. データのエクスポート ダイアログで、使用するエクストラクターとその他の設定を指定します。

    データのエクスポート ダイアログの詳細については、 データのエクスポートトピックを参照してください。

SELECT ステートメントの結果をファイルに保存する

クエリ実行設定を表示する

  • クエリコンソール を開き、ツールバーで データベース設定を開くアイコンクエリ実行設定を開く をクリックします。

ステートメント実行のキャンセル

  • 実行中のステートメントをキャンセルするには、ツールバーの 「実行中のステートメントをキャンセル」アイコンステートメント実行のキャンセル をクリックします。

    または、ガターの進行状況インジケーターにマウスを移動し、進行状況アイコンを置き換える 「実行中のステートメントをキャンセル」アイコンステートメント実行のキャンセル をクリックします。

「実行中のステートメントをキャンセル」アイコンステートメント実行のキャンセル ボタンを 2 回クリックすると、PhpStorm によりリモートプロセスを終了するか、もう少し待つかを選択できる警告が表示されます。 この警告は、同時に実行されている一部のプロセスに対して非アクティブ化を行うと危険になる可能性があるため、安全を確保するために表示されます。

また、IDE はアイドルキャンセルの 10 秒後に警告を表示します。

接続をキャンセルする

リクエストの実行だけでなく、接続の作成も中断できます。 これは、クエリコンソールで最初に実行するクエリ(これによって接続も作成されます)に特に関係します。

接続を作成するプロセスを停止できます。 これを行うには、接続の作成中にツールバーの ステートメント実行のキャンセル ボタン (「実行中のステートメントをキャンセル」アイコン) をクリックします。 接続が停止され、 接続がキャンセルされました メッセージが表示されます。

解決モード

SQL スクリプトを実行したり、データベースオブジェクトの利用をリンクとして扱ったり、正しいコード補完を提供するには、PhpStorm がコード内のデータベースオブジェクトを特定のコンテキストへ解決する必要があります。 デフォルトでは、IDE はデータベースオブジェクトを解決する起点として、 <スキーマ>セレクター、またはデフォルトデータベース(どちらも設定されていない場合)を使用します。

コードが単一スクリプトか、無関係な SQL ステートメントが複数含まれているかによって、データベースオブジェクトを正しく解決するために、次のいずれかの解決モードを選択してください:

  • Playground :クエリコンソール のデフォルトモード。 すべてのデータベースオブジェクトは同じコンテキストに解決されます。

    コードが単一スクリプトとして実行されることを意図していない、接続されていない SQL ステートメントのセットである場合、このモードを使用します。

  • スクリプト: ローカル SQL ファイルのデフォルトモード。 USE SQL ステートメント(PostgreSQL の場合は SET search_path TO )は、データベースオブジェクトが解決されるデフォルトのコンテキストをオーバーライドします。

    コードを単一スクリプトとして実行する場合は、このモードを使用してください。

次のビデオでは、 パブリック スキーマが クエリコンソール のデフォルトとして選択されています。 スキーマには actor テーブルが含まれていますが、 information_schema スキーマには含まれていません。 解決モードが Playground の場合、すべてのステートメントは無関係であるとみなされ、データベースオブジェクトは両方の 選択 ステートメントでデフォルトのスキーマに解決されます。

解決モードが スクリプト に変更されると、2 番目の 選択 ステートメントは SET search_path TO information_schema ステートメントに関連しているとみなされます。 actor テーブルはそのステートメントでは解決されなくなりました。

ユーザーパラメーター

データベースベンダーによっては、疑問符 ? が SQL ステートメントのパラメーターとして扱われる場合があります。 ツール | データベース | クエリ実行 | ユーザーパラメーター 設定ページ&#xa0; Ctrl+Alt+S で、他にパラメーターとして扱う文字やその並び、場所を指定できます。

SQL パラメーターのパターンは正規表現で指定します。

パラメーター化されたステートメントを実行する

ステートメントにパラメーターがある場合、PhpStorm はステートメント実行前にパラメーター値の指定を求めます。

  • パラメーター化されたステートメントを実行するには、ツールバーの 実行 ボタン (実行ボタン) をクリックし、2 番目の列に値を入力します。 または、 パラメーター ダイアログを開くには、 パラメーターの表示 ボタン (「パラメーター表示」ボタン) をクリックします。

    パラメーター化された文を実行する

命名行動

PhpStorm では、 位置指定ユーザーパラメーターと 名前指定ユーザーパラメーターを使用できます。 位置指定ユーザーパラメーターの場合、各出現は順序に応じて個別に扱われます。 名前指定ユーザーパラメーターの場合、同じ名前の出現はすべて同じパラメーターとして扱われます。

名前付きパラメーターを使用するには、 Ctrl+Alt+S を押して設定を開き、 ツール | データベース | クエリ実行 | ユーザーパラメーター に移動します。 パラメーターパターン ペインで、ユーザーパラメーターパターンに () を追加します。 IDE は () の内容をパラメーター名として扱い、スクリプト実行時に 1 つの値のみを要求します。 そうでない場合、スクリプト内で同じパラメーターが複数回使用されている場合、IDE はパラメーターの順序に応じて複数の値を要求します。

次の例を考えてみましょう。

SELECT * FROM my_table WHERE a = ?x OR b = ?x;
  • \?\w+: 位置指定ユーザーパラメーターパターン。 ?x パラメーターは 2 つの異なるユーザーパラメーターとみなされます。 パラメーターの順序に応じて値が要求されます。

    一般的なユーザーパラメーターを使用してステートメントを実行する
  • \?(\w+) :名前指定ユーザーパラメーターパターン。 ?x は両方とも同じユーザーパラメーターと見なされ、 x がパラメーターの名前です。

    名前付きユーザーパラメーターを使用したステートメントの実行

パラメーターパターンの詳細については、 ユーザーパラメーターのリファレンストピックを参照してください。

サンプル

パラメーターとしての配列

PhpStorm では、パラメーターを値に置き換えるのは簡単です。 配列を値として使用するには、対応するフィールドに配列を指定します。

次の例では、 ? パラメーターを 206, 'John', 'Smith' 値に置き換えることができます。

INSERT INTO actor (actor_id, first_name, last_name, last_update) VALUES (?, '01.02.2023 13:34');
値の配列をパラメーターとして使用する

パラメーターの詳細はデータベースのドキュメントをご覧ください。

パラメーターパターン

スクリプトで特定のパラメーター構文を使用している場合、正規表現でパターンを指定してください。

次の例では、 ツール | データベース | クエリ実行 | ユーザーパラメーター 設定ページ&#xa0; Ctrl+Alt+S%{2}(\w+_\d+) パターンを設定する必要があります:

SELECT title, description, release_year FROM actor JOIN film_actor fa ON actor.actor_id = fa.actor_id JOIN film f ON f.film_id = fa.film_id WHERE last_name = '%%winnerpl_2';
IDE 設定のパラメーターパターンの例ダイアログ

テーブル構造のプレビュー

IDE コードエディターでは、 クイックドキュメント 機能を使用して、SQL ステートメント内のテーブルの構造をプレビューできます。

  • SQL ステートメント内のテーブル構造をプレビューするには、テーブルを選択して Ctrl+Q を押します。

表示される クイックドキュメント ポップアップには、テーブルに関するその他の情報とともに 作成 DDL スクリプトが含まれます。

この機能の詳細は、 クイックドキュメント をご覧ください。

エディタータブでテーブル構造をプレビューする

実行されたステートメントの履歴を表示する

クエリ履歴を使用するダイアログ

PhpStorm は、クエリコンソール で実行したすべてのステートメントの履歴を保存します。

  • クエリ履歴 ダイアログを開くには、ツールバーの クエリ履歴の閲覧 ボタン (クエリ履歴を閲覧するボタン) をクリックするか、 Ctrl+Alt+E を押します。

    クエリ履歴 ダイアログでは、次の操作を実行できます。

    • 情報をフィルターするには、検索クエリを入力してください。

    • クエリ履歴 ダイアログからクエリコンソールにクエリを貼り付けるには、 クエリ履歴 ダイアログの左ペインでクエリをダブルクリックしてください。

    • 履歴からレコードを削除するには、レコードを選択して Delete を押します。

    実行されたクエリの履歴を表示する

結果の表示

通常、クエリを実行すると、結果は表形式で返されます。 PhpStorm は、結果を データエディターで表示します。 デフォルトでは、各ステートメントごとに、結果を含むデータエディターが サービス ツールウィンドウの個別のタブに表示されます。

クエリ結果の表示の詳細については、 クエリ結果 を参照してください。

サービスツールウィンドウのタブ内の SELECT ステートメントの結果
2026 年 5 月 22 日