GORM 是 Go 程式設計語言的物件關聯對應 (ORM) 工具。這個框架可將物件導向網域模型對應至關聯式資料庫。您可以使用開放原始碼的 Spanner Dialect (SpannerDialect),將 GoogleSQL 方言資料庫與 GORM 整合。
本文說明如何設定 GORM,以便連線至 Spanner Omni。GORM 與 Spanner Omni 的整合方式,與 Spanner 相同。請注意,GORM 支援使用 GoogleSQL 方言與 Spanner Omni 整合,但不支援 PostgreSQL 方言。
詳情請參閱 Spanner 說明文件中的「將 Spanner 與 GORM 整合」。
必要條件
Spanner Omni 需要 go-gorm-spanner 1.10.0 以上版本。如要在應用程式中使用 Spanner GORM 方言,請將下列模組新增至 go.mod 檔案:
go get github.com/googleapis/go-sql-spanner
go get github.com/googleapis/go-gorm-spanner
為 GoogleSQL 資料庫設定 GORM
如要在應用程式中使用 GoogleSQL GORM 方言,請在初始化 GORM 的檔案中新增下列匯入陳述式:
import (
"fmt"
"gorm.io/gorm"
_ "github.com/googleapis/go-sql-spanner"
spannergorm "github.com/googleapis/go-gorm-spanner"
)
dsn := fmt.Sprintf("%s/databases/%s?use_plain_text=true", SPANNER_OMNI_ENDPOINT, DATABASE_ID)
db, err := gorm.Open(spannergorm.New(spannergorm.Config{DriverName: "spanner", DSN: dsn}), &gorm.Config{})