Integrar o Spanner com o GORM (dialeto GoogleSQL)

O GORM é uma ferramenta de mapeamento relacional de objetos para a linguagem de programação Go. Ele fornece uma estrutura para mapear um modelo de domínio orientado a objetos para um banco de dados relacional.

É possível integrar bancos de dados do dialeto GoogleSQL ao GORM usando o dialeto do Spanner (SpannerDialect) de código aberto.

Configurar o GORM com bancos de dados do dialeto GoogleSQL do Spanner

Para usar o dialeto GORM do GoogleSQL no seu aplicativo, adicione a seguinte instrução de importação ao arquivo em que o GORM é inicializado:

  import (
    "fmt"

    "gorm.io/gorm"
    _ "github.com/googleapis/go-sql-spanner"
    spannergorm "github.com/googleapis/go-gorm-spanner"
  )

  dsn := fmt.Sprintf("projects/%s/instances/%s/databases/%s", projectId, instanceId, databaseId),
  db, err := gorm.Open(spannergorm.New(spannergorm.Config{DriverName: "spanner", DSN: dsn}), &gorm.Config{})
  ```

See the

[GORM with GoogleSQL documentation][go-driver-documentation]

for more connection options for Spanner.

## Use GORM with Spanner GoogleSQL-dialect databases

For more information about the features and recommendations for using
GORM with Spanner, consult the [reference documentation][spanner-gorm-github]
on GitHub.

## What's next {: #whats-next}

*   Checkout the [sample application][gorm-gsql-sample-application] using
    GORM with GoogleSQL and Spanner.
*   Learn more about [GORM][gorm].
*   [File a GitHub issue][spanner-gorm-issue] to report a bug or ask a question
    about using GORM with Spanner with GoogleSQL.
*   Learn more about [Integrate Spanner with GORM (
    PostgreSQL dialect)](/spanner/docs/use-gorm-postgresql).