GoLand 2026.2 Help

如何从 GoLand 运行 PostgreSQL 查询

开始一个项目

创建 Go 项目

  1. 请选择 文件 | 新建 | 项目…。

    或者,在 欢迎来到 %instance% 对话框中导航至 新建 | 项目。

  2. 在 新项目 对话框中,从可用项目类型列表中选择 前往。

  3. 在 GOROOT 字段中,指定您的 Go 安装位置。 GoLand 通常会自动检测此位置。

    要更改或安装新的 Go SDK 版本,请点击 添加 SDK (添加 SDK 图标 )并选择以下选项之一:

    • 本地 :使用本地系统中现有的 SDK。

    • 下载 :从官方存储库下载 Go SDK 版本。

  4. 点击 创建 以创建项目。

    与 Go 的集成

创建 Go 文件

  1. 要创建一个 Go 文件,请使用以下选项之一:

    • 在 项目 工具窗口中,右键点击项目的父文件夹,然后选择 新建 | 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)。 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

    克隆的存储库的两个新文件夹将出现在 项目 工具窗口中。

    克隆存储库

运行一个 Docker 容器

在本教程中,我们将使用 Docker 基于 datagrip-documentation 存储库运行一个 PostgreSQL 容器。 在存储库的 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. 点击 添加按钮 以添加 Docker 配置,并指定如何连接到 Docker 守护进程。

    连接设置取决于您的 Docker 版本和操作系统。

    连接成功 消息应出现在对话框的底部。

    Docker 连接设置

    有关在 Windows 或 macOS 上使用 Docker 时将本地路径映射到运行 Docker 守护进程的虚拟机的更多信息,请参阅 Windows 和 macOS 主机的虚拟机路径映射。 您将无法对映射本地路径之外的目录使用卷和绑定挂载。

    此表在 Linux 主机上不可用,在该主机上 Docker 本地运行,您可以将任何目录挂载到容器。

  3. 打开 服务 工具窗口(查看 | 工具窗口 | 服务 或 Alt+8 ),选择已配置的 Docker 连接节点 Docker 节点 并点击 连接按钮 ,或从上下文菜单中选择 连接。

    与 Docker 连接的 Docker 工具窗口

    要编辑 Docker 连接设置,请选择 Docker 节点并点击工具栏上的 “编辑配置”按钮 ,或从上下文菜单中选择 编辑配置。

    您还可以点击 添加服务菜单 并选择 Docker 连接 ,直接从 服务 工具窗口添加 Docker 连接。 如果您已配置 Docker contexts ,您可以选择 来自 Docker Contexts 的 Docker 连接 以添加相应的连接。

创建 Docker Compose 部署配置

  1. 在 项目 工具窗口(查看 | 工具窗口 | Project )中,找到 docker-compose.yml 文件,来自 克隆的存储库。

  2. 点击边距中的 运行 图标。

    postgresql_12 容器将启动并出现在 服务 工具窗口中。

    创建 Docker Compose 部署配置

连接到数据源

根据数据库供应商(MySQL、PostgreSQL、Oracle),您需要创建相应的数据源连接。 在本教程中,我们将创建一个 PostgreSQL 连接。 如果您想连接到其他数据库管理系统(DBMS),请参阅 创建数据源。

  1. 通过以下任一方式打开数据源属性:

    • 在 数据库 工具窗口工具栏中,点击 数据源图标数据源。

    • 请按 Shift+Enter.

    打开数据源和驱动程序对话框
  2. 在 数据源和驱动程序 对话框中,点击 添加 图标 ("添加"图标 ),然后选择 PostgreSQL。

  3. 请检查连接设置区域底部是否有一个 下载缺失的驱动程序文件 链接。 点击此链接下载与数据库交互所需的驱动程序。 如需直接下载链接,请参阅 JetBrains JDBC drivers页面。

    下载缺失的驱动文件链接

    下载的 JDBC 驱动程序的位置是 GoLand 配置目录。

    您还可以使用自己的数据库驱动程序,而不是提供的驱动程序。 有关使用驱动程序连接到数据库的更多信息,请参阅 将用户驱动程序添加到现有连接。

    如果没有 下载缺失的驱动程序文件 链接,那么您已经拥有了所需的驱动程序。

  4. 在 URL 字段中,粘贴以下 JDBC URL:

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

    您可以在 docker-compose.yml 文件中找到其他 DBMS 的 JDBC URL。 在文本编辑器中打开文件以查看可用的连接详细信息。

  5. (可选)在 名称 字段中,为连接输入一个自定义名称(例如,PostgreSQL)。

  6. 确保可以使用提供的详细信息建立数据库连接。 为此,请点击连接详细信息部分底部的 测试连接 链接。

    如果您遇到任何连接问题,请参考 无法连接到数据库 页面。

  7. (可选)默认情况下,仅检查并提供默认数据库和架构以供使用。 如果您还想使用其他数据库和架构,请在 架构 选项卡中选择它们以进行检查。

    数据源和驱动程序对话框中的 Schemas 选项卡
  8. 请点击 确定 以创建数据源。

与 PostgreSQL 的集成

运行转储文件

创建数据库结构

  1. 在项目(查看 | 工具窗口 | Project )工具窗口中,导航到 dump/postgres-sakila-db/postgres-sakila-schema.sql 。

  2. 右键点击 postgres-sakila-schema.sql 并选择 运行 postgres-sakila-schema.sql。 或者,打开文件并按 Ctrl+Shift+F10。

  3. 在 编辑配置 对话框中,点击 添加 按钮,在 目标数据源/架构 面板中选择 PostgreSQL。

  4. 点击 运行 执行脚本。

    运行架构转储文件

将示例数据加载到数据库

  1. 在项目(查看 | 工具窗口 | Project )工具窗口中,导航到 dump/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 发出查询,我们将使用 sqlx 库,该库为 Go 标准 database/sql 包提供了一组扩展。 有关该库的更多信息,请参阅 GitHub 上的 sqlx。

  1. 打开创建的 main.go 文件,并将 以下代码 从 GitHub 粘贴到其中。

  2. 将光标放在 "github.com/jmoiron/sqlx" 导入语句上,按 Alt+Enter 并选择 修复缺失的依赖项(go mod tidy)。

运行您的代码

  • 要运行配置,请点击靠近 main 函数的边距中的 运行 图标(运行图标 ),然后选择 运行 'go build main.go'。

    运行配置
2026年 7月 14日