Esta página descreve os controladores suportados para bases de dados com dialeto GoogleSQL e bases de dados com dialeto PostgreSQL.
A Google suporta controladores Spanner de código aberto para várias bibliotecas de mapeamento objeto-relacional (ORMs) e frameworks populares. Estes controladores permitem a utilização de bases de dados do Spanner através de APIs definidas por essas frameworks.
As tabelas seguintes apresentam todos os ORMs e controladores de código aberto que são suportados para o Spanner, bem como as funcionalidades que cada um suporta. Existe uma tabela para cada dialeto de SQL suportado.
Também pode usar as bibliotecas cliente do Spanner para aceder à API Spanner. Para mais informações, consulte as bibliotecas de cliente do Spanner.
Controladores GoogleSQL e ORMs
Funcionalidade | database/sql | GORM | Spanner JDBC | Hibernar | Spring Data | R2DBC* | Entity Framework | Registo ativo | SQLAlchemy | Django | NHibernate |
---|---|---|---|---|---|---|---|---|---|---|---|
Idioma | Go | Go | Java | Java | Java | Java | C# | Ruby | Python | Python | C# |
Sugestões de declarações | † | ||||||||||
Mutações | |||||||||||
DML em lote | |||||||||||
DDL em lote | |||||||||||
Leituras desatualizadas | |||||||||||
Tabelas intercaladas | |||||||||||
DML particionada | |||||||||||
Etiquetagem de sessões | |||||||||||
Prioridade do pedido | |||||||||||
Tipo JSON | |||||||||||
Etiquetagem de pedidos | |||||||||||
Dialeto SQL da Google | |||||||||||
Dialeto PostgreSQL | |||||||||||
Limitações | Vista | Vista | Vista | Vista | Vista | Vista | Vista |
* Esta coluna descreve o R2DBC quando usado especificamente com o Spring Data.
† Disponível apenas quando envia consultas SQL literais, usando a anotação Spring Data
@Query
.
Drivers e ORMs do PostgreSQL
Todos os controladores PostgreSQL requerem que o proxy PGAdapter esteja em execução. Para mais informações, consulte o artigo Acerca do PGAdapter.
Funcionalidade | Spanner JDBC | JDBC do PostgreSQL | Hibernar | pgx | GORM | psycopg2 | psycopg3 | SQLAlchemy 2 | node-postgres |
---|---|---|---|---|---|---|---|---|---|
Idioma | Java | Java | Java | Go | Go | Python | Python | Python | Node.js |
Sugestões de declarações | |||||||||
Mutações | |||||||||
DML em lote | |||||||||
DDL em lote | |||||||||
Leituras desatualizadas | |||||||||
Tabelas intercaladas | |||||||||
DML particionada | |||||||||
Etiquetagem de sessões | |||||||||
Prioridade do pedido | |||||||||
Etiquetagem de pedidos | |||||||||
Limitações | Vista | Vista | Vista | Vista | Vista | Vista | Vista | Vista |