GoLand 2026.1 Help

GoLand から PostgreSQL クエリを実行する方法

プロジェクトの開始

Go プロジェクトを作成する

  1. ファイル | 新規 | プロジェクト… を選択します。

    または、 {0} へようこそ ダイアログで 新規 | プロジェクト に移動します。

  2. 新規プロジェクト ダイアログで、使用可能なプロジェクトタイプのリストから Go を選択します。

  3. GOROOT フィールドで、Go のインストール場所を指定します。 GoLand は通常、この場所を自動的に検出します。

    Go SDK の新しいバージョンを変更またはインストールするには、 SDK の追加 (SDK 追加アイコン) をクリックし、次のいずれかのオプションを選択します。

    • ローカル: ローカルシステムから既存の SDK を使用します。

    • ダウンロード: 公式リポジトリから Go SDK バージョンをダウンロードします。

  4. 作成 」をクリックしてプロジェクトを作成します。

    Go との統合

Go ファイルを作成する

  1. Go ファイルを作成するには、次のいずれかのオプションを使用します。

    • プロジェクト ツールウィンドウで、プロジェクトの親フォルダーを右クリックし、 新規 | Go ファイル を選択します。

    • プロジェクトの親フォルダーをクリックし、 Alt+Insert を押して、 Go ファイル を選択します。

    • プロジェクトの親フォルダーをクリックし、 ファイル | 新規 | Go ファイル に移動します。

  2. 新規 Go ファイル ダイアログでファイル名を入力し、ファイルの種類を選択します。

    • 空のファイル — 空の Go ファイルを作成します。

    • シンプルアプリケーション — 定義済みの main 関数を含む Go ファイルを作成します。

    Go ファイルを作成する

リポジトリからファイルを複製する

この例では、Sakila ダンプファイル (https://github.com/DataGrip/dumps(英語)) と Docker Compose ファイル (https://github.com/DataGrip/datagrip-documentation(英語)) の 2 つのリポジトリを使用します。 Sakila リポジトリには、Sakila サンプルデータベースを作成してデータを入力する SQL スクリプトが含まれています。 Docker リポジトリには、サービス、ネットワーク、ボリュームを定義する YAML ファイルが含まれています。

リポジトリのクローン

  1. 表示 | ツールウィンドウ | ターミナル を選択するか、 Alt+F12 を押します。

  2. ターミナルで、次のコマンドを実行します。

    git clone https://github.com/DataGrip/dumps.git
    git clone https://github.com/DataGrip/datagrip-documentation.git

    クローンされたリポジトリの 2 つの新しいフォルダーが プロジェクト ツールウィンドウに表示されます。

    リポジトリのクローン

Docker コンテナーを実行する

このチュートリアルでは、Docker を使用して PostgreSQL コンテナーを datagrip-documentation リポジトリをベースに実行します。 リポジトリの Docker(ドッカー) ディレクトリには、 .env ファイルと docker-compose.yml ファイルがあります。 .env ファイルには、PostgreSQL サービスの資格情報が含まれています。 docker-compose.yml ファイルは、サービスの作成方法と設定方法を定義します。

サービス名は、サービス定義の最初の行、JDBC URL の上に表示されます。 この例では、サービス名は postgresql_12 、JDBC URL は jdbc:postgresql://localhost:54333/guest?user=guest&password=guest です。

postgresql_12: # jdbc:postgresql://localhost:54333/guest?user=guest&password=guest container_name: postgresql_12 ports: - "54333:5432" image: postgres:12-alpine env_file: .env healthcheck: test: "exit 0"

コマンドラインからコンテナーを実行するには、次のコマンドを使用します。

docker-compose up -d postgresql_12

コマンドを実行する前に、必ず docker-compose.yml ファイルが含まれているディレクトリに移動してください。

または、GoLand で Docker プラグインを有効化して使用することもできます。

Docker デーモンに接続する

  1. Ctrl+Alt+S を押して設定を開き、 ビルド、実行、デプロイ | Docker を選択します。

  2. The Add button をクリックして Docker 構成を追加し、Docker デーモンへの接続方法を指定します。

    接続設定は、Docker のバージョンとオペレーティングシステムによって異なります。

    ダイアログの下部に 接続完了 メッセージが表示されます。

    Docker 接続設定

    Windows で Docker または macOS を使用するときに、Docker デーモンを実行している仮想マシンにローカルパスをマッピングする方法の詳細については、 Windows および macOS ホストの仮想マシンパスマッピング を参照してください。 マッピングされたローカルパスの外部にあるディレクトリに対してボリュームやバインドマウントを使用することはできません。

    このテーブルは、Docker がネイティブに実行され、任意のディレクトリをコンテナーにマウントできる Linux ホストでは使用できません。

  3. サービス ツールウィンドウ (表示 | Tool Windows | Services または Alt+8) を開き、構成済みの Docker 接続ノード Docker ノード を選択して 接続ボタン をクリックするか、コンテキストメニューから 接続 を選択します。

    Docker に接続された Docker ツールウィンドウ

    Docker 接続設定を編集するには、Docker ノードを選択してツールバーの 構成編集ボタン をクリックするか、コンテキストメニューから 構成の編集​ を選択します。

    the Add Service menu をクリックして Docker 接続 を選択し、 サービス ツールウィンドウから直接 Docker 接続を追加することもできます。 Docker コンテキスト(英語)が構成されている場合は、 Docker コンテキストからの Docker 接続 を選択して、対応する接続を追加できます。

Docker Compose デプロイ構成を作成する

  1. プロジェクト ツールウィンドウ (表示 | ツール Windows | プロジェクト) で、 クローンされたリポジトリ(英語)から docker-compose.yml ファイルを見つけます。

  2. ガターの 実行 アイコンをクリックします。

    postgresql_12 コンテナーが起動し、 サービス ツールウィンドウに表示されます。

    Docker Compose デプロイ構成を作成する

データソースに接続する

データベースベンダー(MySQL、PostgreSQL、Oracleを使用します。)に応じて、対応するデータソース接続を作成する必要があります。 このチュートリアルでは、PostgreSQL 接続を作成します。 別のデータベース管理システム(DBMS)に接続する場合は、 データソースを作成する を参照してください。

  1. 次のいずれかの方法でデータソースのプロパティを開きます。

    • データベース ツールウィンドウのツールバーで、 The Data Sources iconデータソース をクリックします。

    • Shift+Enter を押します。

    データソースとドライバーを開くダイアログ
  2. データソースおよびドライバー ダイアログで、 追加 アイコン(The Add icon )をクリックし、 PostgreSQL を選択します。

  3. 接続設定エリアの下部に「不足しているドライバーファイルをダウンロード 」リンクがあるかどうかを確認してください。 このリンクをクリックすると、データベースとのやり取りに必要なドライバーをダウンロードできます。 直接ダウンロードリンクについては、 JetBrains JDBC ドライバーページを参照してください。

    不足しているドライバーファイルのダウンロードリンク

    ダウンロードした JDBC ドライバーの場所は GoLand 構成ディレクトリです。

    提供されているドライバーの代わりにデータベース用のドライバーを使用することもできます。 ドライバーを使用したデータベースへの接続の詳細については、「既存の接続にユーザードライバーを追加する 」を参照してください。

    不足しているドライバーファイルをダウンロード リンクがない場合は、必要なドライバーがすでに存在します。

  4. URL フィールドに次の JDBC URL を貼り付けます。

    jdbc:postgresql://localhost:54333/guest?user=guest&password=guest

    他の DBMS の JDBC URL は docker-compose.yml ファイルに記載されています。 テキストエディターでファイルを開き、利用可能な接続の詳細を確認してください。

  5. (オプション) 命名 フィールドに接続のカスタム名(たとえば、PostgreSQL)を入力します。

  6. 提供された詳細情報を使用してデータベース接続を確立できることを確認してください。 これを行うには、接続詳細セクションの下部にある 接続のテスト リンクをクリックしてください。

    接続の問題が発生した場合は、 データベースに接続できません ページを参照してください。

  7. (オプション) デフォルトでは、デフォルトのデータベースとスキーマのみがイントロスペクトされ、使用可能になります。 他のデータベースやスキーマも操作したい場合は、「スキーマ 」タブで、イントロスペクション用に選択します。

    データソースとドライバーの「スキーマ」タブダイアログ
  8. OK をクリックして、データソースを作成します。

PostgreSQL との統合

ダンプファイルを実行する

データベース構造を作成する

  1. プロジェクト (表示 | ツール Windows | プロジェクト) ツールウィンドウで、 dump/postgres-sakila-db/postgres-sakila-schema.sql に移動します。

  2. postgres-sakila-schema.sql を右クリックし、 postgres-sakila-schema.sql を実行する を選択します。 または、ファイルを開いて Ctrl+Shift+F10 を押します。

  3. 構成の編集​ ダイアログで、 ターゲットデータソース / スキーマ ペインの 追加 ボタンをクリックし、 PostgreSQL を選択します。

  4. 実行 」をクリックしてスクリプトを実行します。

    スキーマダンプファイルを実行する

サンプルデータをデータベースにロードする

  1. プロジェクト (表示 | ツール Windows | プロジェクト) ツールウィンドウで、 ダンプ /postgres-sakila-db ディレクトリに移動します。

  2. postgres-sakila-db ディレクトリを展開します。

  3. postgres-sakila-insert-data.sql を右クリックし、 postgres-sakila-insert-data.sql を実行する を選択します。 または、ファイルを開いて Ctrl+Shift+F10 を押します。

  4. 構成の編集​ ダイアログで、 追加 ボタンをクリックし、 PostgreSQL を選択します。

  5. 実行 」をクリックしてスクリプトを実行します。

データダンプファイルの実行構成を挿入

Go コードから依存関係を取得する

PostgreSQL にクエリを発行するには、Go 標準の database/sql パッケージの拡張機能セットを提供する sqlx ライブラリを使用します。 ライブラリの詳細については、 GitHub の sqlx(英語) を参照してください。

  1. 作成された main.go ファイルを開き、GitHub から 次のコード(英語)を貼り付けます。

  2. キャレットを "github.com/jmoiron/sqlx" インポートステートメントに置き、 Alt+Enter を押して、 不足している依存関係を修正する (go mod tidy) を選択します。

コードを実行する

  • 構成を実行するには、 main 関数の近くのガターにある 実行 アイコン (実行アイコン) をクリックし、 実行 'go build main.go' を選択します。

    構成を実行する
2026 年 5 月 22 日