O GORM é uma ferramenta de mapeamento objeto-relacional para a linguagem de programação Go. Ele fornece um framework para mapear um modelo de domínio orientado a objetos para um banco de dados relacional.
É possível integrar bancos de dados PostgreSQL do Spanner com o GORM usando o driver padrão pgx do PostgreSQL e o PGAdapter.
Configurar o GORM com os bancos de dados do dialeto PostgreSQL do Spanner
Verifique se o PGAdapter está sendo executado na mesma máquina que o aplicativo que está se conectando usando o GORM com o Spanner.
Para mais informações, consulte Iniciar PGAdapter.
Adicione uma instrução de importação para o dialeto GORM do PostgreSQL ao aplicativo. Esse é o mesmo driver que você normalmente usaria com um banco de dados PostgreSQL.
Especifique
localhost
e5432
como o host e a porta do servidor de banco de dados na string de conexão GORM. O GORM exige um nome de usuário e senha na string de conexão. O PGAdapter ignora esses casos.- Se quiser, especifique um número de porta diferente se o PGAdapter estiver configurado para detectar em uma porta diferente da porta padrão do PostgreSQL (5432).
- O PGAdapter não oferece suporte a SSL. Por padrão, o GORM tenta se conectar com o SSL ativado. Desativar o SSL na solicitação de conexão acelera o processo de conexão, porque requer uma viagem de ida e volta a menos.
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{})
Consulte mais opções de conexão na documentação GORM com PostgreSQL (em inglês).
Usar o GORM com os bancos de dados do dialeto PostgreSQL do Spanner
Para mais informações sobre os recursos e as recomendações para o uso do GORM com o Spanner, consulte a documentação de referência (em inglês) no GitHub.
A seguir
- Confira o aplicativo de amostra usando GORM com PGAdapter e Spanner.
- Saiba mais sobre o GORM.
- Saiba mais sobre o PGAdapter.
- Registre um problema no GitHub para relatar um bug ou fazer uma pergunta sobre o uso do GORM com o Spanner com o PGAdapter.