The PostgreSQL language in Spanner
Stay organized with collections
Save and categorize content based on your preferences.
This page summarizes PostgreSQL language support in Spanner.
Spanner provides PostgreSQL language support by expressing Spanner database features through a subset of open source PostgreSQL language constructs, with extensions added to support Spanner features like interleaved tables and hints.
For detailed information about this support, refer to these pages:
- Lexical structure and syntax describes how to form valid PostgreSQL statements.
- Data definition (DDL)
defines the syntax of DDL statements like
CREATE DATABASEandCREATE TABLE. - Data manipulation (DML)
defines the syntax of DML statements like
INSERTandUPDATE. - Queries defines the
syntax of the
SELECTstatement. - Subqueries defines the syntax of subqueries.
- Data types describes the data types that Spanner supports.
- Functions describes the functions that Spanner supports.
- Stored procedures describes stored procedures that come with Spanner.
- Known issues in the PostgreSQL interface for Spanner describes PostgreSQL language features that don't work as expected.
Spanner doesn't support several open source PostgreSQL features, including the following:
- Triggers
- SERIAL
- Fine-grained concurrency control
- SAVEPOINT
- Transactional DDL
- Partial indexes
- Extensions
- Foreign data wrappers
- User-defined data types, functions and operators