GORM 是 Go 编程语言的对象关系映射工具。它提供了一个框架,用于将面向对象的网域模型映射到关系型数据库。
您可以使用标准 PostgreSQL pgx 驱动程序和 PGAdapter 将 Spanner PostgreSQL 数据库与 GORM 集成。
使用 Spanner PostgreSQL 方言数据库设置 GORM
确保 PGAdapter 与使用 GORM 连接到 Spanner 的应用位于同一台机器上。
如需了解详情,请参阅启动 PGAdapter。
向应用添加 PostgreSQL GORM 方言的导入语句。此驱动程序与您通常在 PostgreSQL 数据库中使用的驱动程序相同。
在 GORM 连接字符串中,将
localhost
和5432
指定为数据库服务器主机和端口。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 和 PGAdapter 搭配使用的问题。