将 Spanner 与 GORM(PostgreSQL 方言)集成

GORM 是 Go 编程语言的对象关系映射工具。它提供了一个框架,用于将面向对象的领域模型映射到关系型数据库。

您可以使用标准 PostgreSQL pgx 驱动程序和 PGAdapter 将 Spanner PostgreSQL 数据库与 GORM 集成。

使用 Spanner PostgreSQL 方言数据库设置 GORM

  1. 确保 PGAdapter 与 使用 GORM 与 Spanner 建立连接的应用。

    如需了解详情,请参阅启动 PGAdapter

  2. 为 PostgreSQL GORM 方言添加 import 语句 应用这与您通常用于 PostgreSQL 数据库。

  3. localhost5432 指定为 GORM 连接字符串。GORM 要求在连接字符串中提供用户名和密码。PGAdapter 会忽略这些内容。

    • (可选)如果 PGAdapter 配置为监听默认 PostgreSQL 端口 (5432) 以外的端口,请指定其他端口号。
    • PGAdapter 不支持 SSL。默认情况下,GORM 首先 通过启用 SSL 进行连接。在连接请求中停用 SSL 会加快连接过程,因为这样可以减少一次往返。
    import (
      "gorm.io/driver/postgres"
      "gorm.io/gorm"
    )
    
    dsn := "host=localhost user=gorm password=gorm dbname=gorm port=5432 sslmode=disable"
    db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})
    

请参阅使用 PostgreSQL 的 GORM 文档 了解 PostgreSQL 的更多连接选项。

将 GORM 与 Spanner PostgreSQL 方言数据库搭配使用

如需详细了解将 GORM 与 Spanner 搭配使用的功能和建议,请参阅 GitHub 上的参考文档

后续步骤

  • 使用以下网址查看示例应用: 将 GORM 与 PGAdapter 和 Spanner 搭配使用。
  • 详细了解 GORM
  • 详细了解 PGAdapter
  • 提交 GitHub 问题以报告 bug 或提出有关将 GORM 与 Spanner 搭配使用的问题。