En esta página, se describen los controladores compatibles con las bases de datos con dialecto de GoogleSQL y con dialecto de PostgreSQL de Spanner.
Google admite controladores de Spanner de código abierto para varias bibliotecas y frameworks populares de asignación relacional de objetos (ORM). Estos controladores permiten el uso de las bases de datos de Spanner a través de las APIs definidas por esos frameworks.
En las siguientes tablas, se enumeran todos los ORM y controladores de código abierto que son compatibles con Spanner, así como las funciones que admite cada uno. Hay una tabla para cada dialecto de SQL compatible.
También puedes usar las bibliotecas cliente de Spanner para acceder a la API de Spanner. Para obtener más información, consulta Bibliotecas cliente de Spanner.
Controladores y ORM de GoogleSQL
Función | database/sql | GORM | JDBC de Spanner | Hibernate | Datos de Spring | R2DBC* | Entity Framework | Active Record | SQLAlchemy | Django | NHibernate |
---|---|---|---|---|---|---|---|---|---|---|---|
Idioma | Go | Go | Java | Java | Java | Java | C# | Ruby | Python | Python | C# |
Sugerencias de instrucciones | † | ||||||||||
Mutaciones | |||||||||||
DML por lotes | |||||||||||
DDL por lotes | |||||||||||
Lecturas inactivas | |||||||||||
Tablas intercaladas | |||||||||||
DML particionado | |||||||||||
Etiquetado de sesiones | |||||||||||
Prioridad de la solicitud | |||||||||||
Tipo JSON | |||||||||||
Etiquetado de solicitudes | |||||||||||
Dialecto de Google SQL | |||||||||||
Dialecto de PostgreSQL | |||||||||||
Limitaciones | Ver | Ver | Ver | Ver | Ver | Ver | Ver |
* En esta columna, se describe R2DBC cuando se usa de forma específica con los datos de Spring.
† Disponible solo cuando se envían consultas de SQL literales, a través de la anotación @Query
de Spring Data.
Controladores y ORM de PostgreSQL
Todos los controladores de PostgreSQL requieren que el proxy de PGAdapter esté en ejecución. Para obtener más información, consulta Acerca de PGAdapter.
Función | JDBC de Spanner | JDBC de PostgreSQL | Hibernate | pgx | GORM | psycopg2 | psycopg3 | SQLAlchemy 2 | node-postgres |
---|---|---|---|---|---|---|---|---|---|
Idioma | Java | Java | Java | Go | Go | Python | Python | Python | Node.js |
Sugerencias de instrucciones | |||||||||
Mutaciones | |||||||||
DML por lotes | |||||||||
DDL por lotes | |||||||||
Lecturas inactivas | |||||||||
Tablas intercaladas | |||||||||
DML particionado | |||||||||
Etiquetado de sesiones | |||||||||
Prioridad de la solicitud | |||||||||
Etiquetado de solicitudes | |||||||||
Limitaciones | Ver | Ver | Ver | Ver | Ver | Ver | Ver | Ver |