September 26, 2024: PostgreSQL 17 Released!
DocumentationPostgreSQL devel (2024-10-30 07:32:12 - git commit 745217a051)
Supported Versions: Current (17) / 16 / 15 / 14 / 13 / 12
Development Versions: devel
Unsupported versions: 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

PostgreSQL 18devel Documentation

The PostgreSQL Global Development Group


Table of Contents

Preface
1. What Is PostgreSQL?
2. A Brief History of PostgreSQL
3. Conventions
4. Further Information
5. Bug Reporting Guidelines
I. Tutorial
1. Getting Started
2. The SQL Language
3. Advanced Features
II. The SQL Language
4. SQL Syntax
5. Data Definition
6. Data Manipulation
7. Queries
8. Data Types
9. Functions and Operators
10. Type Conversion
11. Indexes
12. Full Text Search
13. Concurrency Control
14. Performance Tips
15. Parallel Query
III. Server Administration
16. Installation from Binaries
17. Installation from Source Code
18. Server Setup and Operation
19. Server Configuration
20. Client Authentication
21. Database Roles
22. Managing Databases
23. Localization
24. Routine Database Maintenance Tasks
25. Backup and Restore
26. High Availability, Load Balancing, and Replication
27. Monitoring Database Activity
28. Reliability and the Write-Ahead Log
29. Logical Replication
30. Just-in-Time Compilation (JIT)
31. Regression Tests
IV. Client Interfaces
32. libpq — C Library
33. Large Objects
34. ECPG — Embedded SQL in C
35. The Information Schema
V. Server Programming
36. Extending SQL
37. Triggers
38. Event Triggers
39. The Rule System
40. Procedural Languages
41. PL/pgSQLSQL Procedural Language
42. PL/Tcl — Tcl Procedural Language
43. PL/Perl — Perl Procedural Language
44. PL/Python — Python Procedural Language
45. Server Programming Interface
46. Background Worker Processes
47. Logical Decoding
48. Replication Progress Tracking
49. Archive Modules
VI. Reference
I. SQL Commands
II. PostgreSQL Client Applications
III. PostgreSQL Server Applications
VII. Internals
50. Overview of PostgreSQL Internals
51. System Catalogs
52. System Views
53. Frontend/Backend Protocol
54. PostgreSQL Coding Conventions
55. Native Language Support
56. Writing a Procedural Language Handler
57. Writing a Foreign Data Wrapper
58. Writing a Table Sampling Method
59. Writing a Custom Scan Provider
60. Genetic Query Optimizer
61. Table Access Method Interface Definition
62. Index Access Method Interface Definition
63. Write Ahead Logging for Extensions
64. Built-in Index Access Methods
65. Database Physical Storage
66. Transaction Processing
67. System Catalog Declarations and Initial Contents
68. How the Planner Uses Statistics
69. Backup Manifest Format
VIII. Appendixes
A. PostgreSQL Error Codes
B. Date/Time Support
C. SQL Key Words
D. SQL Conformance
E. Release Notes
F. Additional Supplied Modules and Extensions
G. Additional Supplied Programs
H. External Projects
I. The Source Code Repository
J. Documentation
K. PostgreSQL Limits
L. Acronyms
M. Glossary
N. Color Support
O. Obsolete or Renamed Features
Bibliography
Index