Auf dieser Seite werden die Treiber beschrieben, die für Spanner für GoogleSQL-Dialektdatenbanken und PostgreSQL-Dialektdatenbanken unterstützt werden.
Google unterstützt Open-Source-Spanner-Treiber für verschiedene beliebte objektrelationale Zuordnungsbibliotheken (ORMs) und Frameworks. Diese Treiber ermöglichen die Verwendung von Spanner-Datenbanken über APIs, die von diesen Frameworks definiert werden.
In den folgenden Tabellen sind alle Open-Source-ORMs und -Treiber aufgeführt, die für Spanner unterstützt werden, sowie die Funktionen, die jeweils unterstützt werden. Für jeden unterstützten SQL-Dialekt gibt es eine Tabelle.
Sie können auch die Spanner-Clientbibliotheken verwenden, um auf die Spanner API zuzugreifen. Weitere Informationen finden Sie unter Spanner-Clientbibliotheken.
GoogleSQL-Treiber und ORMs
| Funktion | database/sql | GORM | Spanner JDBC | Hibernate | Spring Data | R2DBC* | Entity Framework | Active Record | SQLAlchemy | Django | NHibernate |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Sprache | Go | Go | Java | Java | Java | Java | C# | Ruby | Python | Python | C# |
| Für Anweisungen unterstützte Hinweise | † | ||||||||||
| Mutationen | |||||||||||
| Batch-DML | |||||||||||
| Batch-DDL | |||||||||||
| Veraltete Lesevorgänge | |||||||||||
| Überlappende Tabellen | |||||||||||
| Partitionierte DML | |||||||||||
| Sitzungen labeln | |||||||||||
| Priorität der Anfrage | |||||||||||
| JSON-Typ | |||||||||||
| Anfrage-Tagging | |||||||||||
| Google-SQL-Dialekt | |||||||||||
| PostgreSQL-Dialekt | |||||||||||
| Beschränkungen | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht |
* In dieser Spalte wird R2DBC bei Verwendung speziell mit Spring Data beschrieben.
† Nur verfügbar, wenn literale SQL-Abfragen über die Annotation @Query von Spring Data gesendet werden.
PostgreSQL-Treiber und ORMs
Für alle PostgreSQL-Treiber muss der PGAdapter-Proxy ausgeführt werden. Weitere Informationen finden Sie unter Über PGAdapter.
| Funktion | Spanner JDBC | PostgreSQL JDBC | Hibernate | pgx | GORM | psycopg2 | psycopg3 | SQLAlchemy 2 | node-postgres |
|---|---|---|---|---|---|---|---|---|---|
| Sprache | Java | Java | Java | Go | Go | Python | Python | Python | Node.js |
| Für Anweisungen unterstützte Hinweise | |||||||||
| Mutationen | |||||||||
| Batch-DML | |||||||||
| Batch-DDL | |||||||||
| Veraltete Lesevorgänge | |||||||||
| Überlappende Tabellen | |||||||||
| Partitionierte DML | |||||||||
| Sitzungen labeln | |||||||||
| Priorität der Anfrage | |||||||||
| Anfrage-Tagging | |||||||||
| Beschränkungen | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht | Ansicht |