SlideShare a Scribd company logo
1 of 2888
Download to read offline
PostgreSQL 15.1 Documentation
The PostgreSQL Global Development Group
PostgreSQL 15.1 Documentation
The PostgreSQL Global Development Group
Copyright © 1996–2022 The PostgreSQL Global Development Group
Legal Notice
PostgreSQL is Copyright © 1996–2022 by the PostgreSQL Global Development Group.
Postgres95 is Copyright © 1994–5 by the Regents of the University of California.
Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written
agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies.
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL,
INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE
AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED
HEREUNDER IS ON AN “AS-IS” BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAIN-
TENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Table of Contents
Preface ................................................................................................................... xxxii
1. What Is PostgreSQL? .................................................................................... xxxii
2. A Brief History of PostgreSQL ....................................................................... xxxii
2.1. The Berkeley POSTGRES Project ........................................................ xxxiii
2.2. Postgres95 ....................................................................................... xxxiii
2.3. PostgreSQL ...................................................................................... xxxiv
3. Conventions ................................................................................................ xxxiv
4. Further Information ...................................................................................... xxxiv
5. Bug Reporting Guidelines .............................................................................. xxxv
5.1. Identifying Bugs ................................................................................ xxxv
5.2. What to Report ................................................................................. xxxvi
5.3. Where to Report Bugs ....................................................................... xxxvii
I. Tutorial .................................................................................................................... 1
1. Getting Started .................................................................................................. 3
1.1. Installation ............................................................................................. 3
1.2. Architectural Fundamentals ....................................................................... 3
1.3. Creating a Database ................................................................................. 3
1.4. Accessing a Database .............................................................................. 5
2. The SQL Language ............................................................................................ 7
2.1. Introduction ............................................................................................ 7
2.2. Concepts ................................................................................................ 7
2.3. Creating a New Table .............................................................................. 7
2.4. Populating a Table With Rows .................................................................. 8
2.5. Querying a Table .................................................................................... 9
2.6. Joins Between Tables ............................................................................. 11
2.7. Aggregate Functions .............................................................................. 13
2.8. Updates ............................................................................................... 14
2.9. Deletions .............................................................................................. 15
3. Advanced Features ........................................................................................... 16
3.1. Introduction .......................................................................................... 16
3.2. Views .................................................................................................. 16
3.3. Foreign Keys ........................................................................................ 16
3.4. Transactions ......................................................................................... 17
3.5. Window Functions ................................................................................. 19
3.6. Inheritance ........................................................................................... 22
3.7. Conclusion ........................................................................................... 23
II. The SQL Language ................................................................................................. 24
4. SQL Syntax .................................................................................................... 32
4.1. Lexical Structure ................................................................................... 32
4.2. Value Expressions ................................................................................. 41
4.3. Calling Functions .................................................................................. 54
5. Data Definition ................................................................................................ 57
5.1. Table Basics ......................................................................................... 57
5.2. Default Values ...................................................................................... 58
5.3. Generated Columns ................................................................................ 59
5.4. Constraints ........................................................................................... 60
5.5. System Columns ................................................................................... 69
5.6. Modifying Tables .................................................................................. 70
5.7. Privileges ............................................................................................. 73
5.8. Row Security Policies ............................................................................ 77
5.9. Schemas ............................................................................................... 84
5.10. Inheritance .......................................................................................... 88
5.11. Table Partitioning ................................................................................ 92
5.12. Foreign Data ..................................................................................... 106
5.13. Other Database Objects ....................................................................... 106
iii
PostgreSQL 15.1 Documentation
5.14. Dependency Tracking ......................................................................... 106
6. Data Manipulation .......................................................................................... 108
6.1. Inserting Data ..................................................................................... 108
6.2. Updating Data ..................................................................................... 109
6.3. Deleting Data ...................................................................................... 110
6.4. Returning Data from Modified Rows ....................................................... 110
7. Queries ......................................................................................................... 112
7.1. Overview ............................................................................................ 112
7.2. Table Expressions ................................................................................ 112
7.3. Select Lists ......................................................................................... 128
7.4. Combining Queries (UNION, INTERSECT, EXCEPT) ................................ 130
7.5. Sorting Rows (ORDER BY) .................................................................. 131
7.6. LIMIT and OFFSET ............................................................................ 132
7.7. VALUES Lists ..................................................................................... 132
7.8. WITH Queries (Common Table Expressions) ............................................ 133
8. Data Types .................................................................................................... 143
8.1. Numeric Types .................................................................................... 144
8.2. Monetary Types ................................................................................... 150
8.3. Character Types ................................................................................... 151
8.4. Binary Data Types ............................................................................... 153
8.5. Date/Time Types ................................................................................. 154
8.6. Boolean Type ...................................................................................... 164
8.7. Enumerated Types ............................................................................... 165
8.8. Geometric Types ................................................................................. 167
8.9. Network Address Types ........................................................................ 169
8.10. Bit String Types ................................................................................ 172
8.11. Text Search Types .............................................................................. 173
8.12. UUID Type ....................................................................................... 176
8.13. XML Type ........................................................................................ 176
8.14. JSON Types ...................................................................................... 178
8.15. Arrays .............................................................................................. 188
8.16. Composite Types ............................................................................... 198
8.17. Range Types ..................................................................................... 204
8.18. Domain Types ................................................................................... 210
8.19. Object Identifier Types ....................................................................... 211
8.20. pg_lsn Type ................................................................................... 213
8.21. Pseudo-Types .................................................................................... 213
9. Functions and Operators .................................................................................. 216
9.1. Logical Operators ................................................................................ 216
9.2. Comparison Functions and Operators ...................................................... 217
9.3. Mathematical Functions and Operators .................................................... 221
9.4. String Functions and Operators .............................................................. 228
9.5. Binary String Functions and Operators .................................................... 238
9.6. Bit String Functions and Operators ......................................................... 242
9.7. Pattern Matching ................................................................................. 244
9.8. Data Type Formatting Functions ............................................................. 263
9.9. Date/Time Functions and Operators ........................................................ 271
9.10. Enum Support Functions ..................................................................... 287
9.11. Geometric Functions and Operators ....................................................... 288
9.12. Network Address Functions and Operators .............................................. 295
9.13. Text Search Functions and Operators ..................................................... 298
9.14. UUID Functions ................................................................................ 304
9.15. XML Functions ................................................................................. 304
9.16. JSON Functions and Operators ............................................................. 319
9.17. Sequence Manipulation Functions ......................................................... 337
9.18. Conditional Expressions ...................................................................... 338
9.19. Array Functions and Operators ............................................................. 341
9.20. Range/Multirange Functions and Operators ............................................. 345
iv
PostgreSQL 15.1 Documentation
9.21. Aggregate Functions ........................................................................... 350
9.22. Window Functions ............................................................................. 357
9.23. Subquery Expressions ......................................................................... 358
9.24. Row and Array Comparisons ............................................................... 361
9.25. Set Returning Functions ...................................................................... 364
9.26. System Information Functions and Operators .......................................... 367
9.27. System Administration Functions .......................................................... 385
9.28. Trigger Functions ............................................................................... 401
9.29. Event Trigger Functions ...................................................................... 402
9.30. Statistics Information Functions ............................................................ 405
10. Type Conversion .......................................................................................... 407
10.1. Overview .......................................................................................... 407
10.2. Operators .......................................................................................... 408
10.3. Functions .......................................................................................... 412
10.4. Value Storage .................................................................................... 416
10.5. UNION, CASE, and Related Constructs .................................................. 417
10.6. SELECT Output Columns .................................................................... 418
11. Indexes ....................................................................................................... 420
11.1. Introduction ....................................................................................... 420
11.2. Index Types ...................................................................................... 421
11.3. Multicolumn Indexes .......................................................................... 423
11.4. Indexes and ORDER BY ..................................................................... 424
11.5. Combining Multiple Indexes ................................................................ 425
11.6. Unique Indexes .................................................................................. 425
11.7. Indexes on Expressions ....................................................................... 426
11.8. Partial Indexes ................................................................................... 426
11.9. Index-Only Scans and Covering Indexes ................................................ 429
11.10. Operator Classes and Operator Families ................................................ 432
11.11. Indexes and Collations ...................................................................... 433
11.12. Examining Index Usage ..................................................................... 434
12. Full Text Search ........................................................................................... 436
12.1. Introduction ....................................................................................... 436
12.2. Tables and Indexes ............................................................................. 440
12.3. Controlling Text Search ...................................................................... 442
12.4. Additional Features ............................................................................ 449
12.5. Parsers ............................................................................................. 455
12.6. Dictionaries ....................................................................................... 456
12.7. Configuration Example ....................................................................... 466
12.8. Testing and Debugging Text Search ...................................................... 467
12.9. Preferred Index Types for Text Search ................................................... 472
12.10. psql Support .................................................................................... 473
12.11. Limitations ...................................................................................... 476
13. Concurrency Control ..................................................................................... 477
13.1. Introduction ....................................................................................... 477
13.2. Transaction Isolation ........................................................................... 477
13.3. Explicit Locking ................................................................................ 483
13.4. Data Consistency Checks at the Application Level ................................... 489
13.5. Serialization Failure Handling .............................................................. 490
13.6. Caveats ............................................................................................. 491
13.7. Locking and Indexes ........................................................................... 491
14. Performance Tips ......................................................................................... 493
14.1. Using EXPLAIN ................................................................................ 493
14.2. Statistics Used by the Planner .............................................................. 505
14.3. Controlling the Planner with Explicit JOIN Clauses ................................. 510
14.4. Populating a Database ......................................................................... 512
14.5. Non-Durable Settings .......................................................................... 515
15. Parallel Query .............................................................................................. 516
15.1. How Parallel Query Works .................................................................. 516
v
PostgreSQL 15.1 Documentation
15.2. When Can Parallel Query Be Used? ...................................................... 517
15.3. Parallel Plans ..................................................................................... 518
15.4. Parallel Safety ................................................................................... 520
III. Server Administration ............................................................................................ 522
16. Installation from Binaries ............................................................................... 529
17. Installation from Source Code ......................................................................... 530
17.1. Short Version .................................................................................... 530
17.2. Requirements ..................................................................................... 530
17.3. Getting the Source .............................................................................. 532
17.4. Installation Procedure .......................................................................... 532
17.5. Post-Installation Setup ......................................................................... 544
17.6. Supported Platforms ........................................................................... 546
17.7. Platform-Specific Notes ....................................................................... 546
18. Installation from Source Code on Windows ....................................................... 551
18.1. Building with Visual C++ or the Microsoft Windows SDK ........................ 551
19. Server Setup and Operation ............................................................................ 557
19.1. The PostgreSQL User Account ............................................................. 557
19.2. Creating a Database Cluster ................................................................. 557
19.3. Starting the Database Server ................................................................ 559
19.4. Managing Kernel Resources ................................................................. 563
19.5. Shutting Down the Server .................................................................... 571
19.6. Upgrading a PostgreSQL Cluster .......................................................... 572
19.7. Preventing Server Spoofing .................................................................. 574
19.8. Encryption Options ............................................................................. 575
19.9. Secure TCP/IP Connections with SSL .................................................... 576
19.10. Secure TCP/IP Connections with GSSAPI Encryption ............................. 580
19.11. Secure TCP/IP Connections with SSH Tunnels ...................................... 580
19.12. Registering Event Log on Windows ..................................................... 581
20. Server Configuration ..................................................................................... 583
20.1. Setting Parameters .............................................................................. 583
20.2. File Locations .................................................................................... 587
20.3. Connections and Authentication ............................................................ 588
20.4. Resource Consumption ........................................................................ 595
20.5. Write Ahead Log ............................................................................... 603
20.6. Replication ........................................................................................ 613
20.7. Query Planning .................................................................................. 620
20.8. Error Reporting and Logging ............................................................... 627
20.9. Run-time Statistics ............................................................................. 640
20.10. Automatic Vacuuming ....................................................................... 642
20.11. Client Connection Defaults ................................................................. 644
20.12. Lock Management ............................................................................ 654
20.13. Version and Platform Compatibility ..................................................... 655
20.14. Error Handling ................................................................................. 657
20.15. Preset Options .................................................................................. 657
20.16. Customized Options .......................................................................... 659
20.17. Developer Options ............................................................................ 660
20.18. Short Options ................................................................................... 664
21. Client Authentication ..................................................................................... 666
21.1. The pg_hba.conf File ..................................................................... 666
21.2. User Name Maps ............................................................................... 674
21.3. Authentication Methods ....................................................................... 676
21.4. Trust Authentication ........................................................................... 676
21.5. Password Authentication ..................................................................... 677
21.6. GSSAPI Authentication ....................................................................... 678
21.7. SSPI Authentication ............................................................................ 679
21.8. Ident Authentication ........................................................................... 680
21.9. Peer Authentication ............................................................................ 681
21.10. LDAP Authentication ........................................................................ 681
vi
PostgreSQL 15.1 Documentation
21.11. RADIUS Authentication .................................................................... 684
21.12. Certificate Authentication ................................................................... 685
21.13. PAM Authentication ......................................................................... 685
21.14. BSD Authentication .......................................................................... 686
21.15. Authentication Problems .................................................................... 686
22. Database Roles ............................................................................................. 688
22.1. Database Roles .................................................................................. 688
22.2. Role Attributes .................................................................................. 689
22.3. Role Membership ............................................................................... 690
22.4. Dropping Roles .................................................................................. 692
22.5. Predefined Roles ................................................................................ 692
22.6. Function Security ............................................................................... 694
23. Managing Databases ..................................................................................... 695
23.1. Overview .......................................................................................... 695
23.2. Creating a Database ............................................................................ 695
23.3. Template Databases ............................................................................ 696
23.4. Database Configuration ....................................................................... 698
23.5. Destroying a Database ........................................................................ 698
23.6. Tablespaces ....................................................................................... 698
24. Localization ................................................................................................. 701
24.1. Locale Support .................................................................................. 701
24.2. Collation Support ............................................................................... 704
24.3. Character Set Support ......................................................................... 710
25. Routine Database Maintenance Tasks ............................................................... 720
25.1. Routine Vacuuming ............................................................................ 720
25.2. Routine Reindexing ............................................................................ 728
25.3. Log File Maintenance ......................................................................... 729
26. Backup and Restore ...................................................................................... 731
26.1. SQL Dump ....................................................................................... 731
26.2. File System Level Backup ................................................................... 734
26.3. Continuous Archiving and Point-in-Time Recovery (PITR) ........................ 735
27. High Availability, Load Balancing, and Replication ............................................ 746
27.1. Comparison of Different Solutions ........................................................ 746
27.2. Log-Shipping Standby Servers .............................................................. 749
27.3. Failover ............................................................................................ 758
27.4. Hot Standby ...................................................................................... 759
28. Monitoring Database Activity ......................................................................... 767
28.1. Standard Unix Tools ........................................................................... 767
28.2. The Cumulative Statistics System ......................................................... 768
28.3. Viewing Locks .................................................................................. 803
28.4. Progress Reporting ............................................................................. 803
28.5. Dynamic Tracing ............................................................................... 811
29. Monitoring Disk Usage .................................................................................. 821
29.1. Determining Disk Usage ..................................................................... 821
29.2. Disk Full Failure ................................................................................ 822
30. Reliability and the Write-Ahead Log ................................................................ 823
30.1. Reliability ......................................................................................... 823
30.2. Data Checksums ................................................................................ 825
30.3. Write-Ahead Logging (WAL) ............................................................... 825
30.4. Asynchronous Commit ........................................................................ 826
30.5. WAL Configuration ............................................................................ 827
30.6. WAL Internals ................................................................................... 830
31. Logical Replication ....................................................................................... 832
31.1. Publication ........................................................................................ 832
31.2. Subscription ...................................................................................... 833
31.3. Row Filters ....................................................................................... 837
31.4. Column Lists ..................................................................................... 845
31.5. Conflicts ........................................................................................... 847
vii
PostgreSQL 15.1 Documentation
31.6. Restrictions ....................................................................................... 848
31.7. Architecture ...................................................................................... 849
31.8. Monitoring ........................................................................................ 850
31.9. Security ............................................................................................ 850
31.10. Configuration Settings ....................................................................... 850
31.11. Quick Setup ..................................................................................... 851
32. Just-in-Time Compilation (JIT) ....................................................................... 852
32.1. What Is JIT compilation? .................................................................... 852
32.2. When to JIT? .................................................................................... 852
32.3. Configuration .................................................................................... 854
32.4. Extensibility ...................................................................................... 854
33. Regression Tests ........................................................................................... 855
33.1. Running the Tests .............................................................................. 855
33.2. Test Evaluation .................................................................................. 859
33.3. Variant Comparison Files .................................................................... 861
33.4. TAP Tests ......................................................................................... 862
33.5. Test Coverage Examination ................................................................. 862
IV. Client Interfaces ................................................................................................... 864
34. libpq — C Library ........................................................................................ 869
34.1. Database Connection Control Functions ................................................. 869
34.2. Connection Status Functions ................................................................ 885
34.3. Command Execution Functions ............................................................. 891
34.4. Asynchronous Command Processing ...................................................... 907
34.5. Pipeline Mode ................................................................................... 911
34.6. Retrieving Query Results Row-by-Row .................................................. 915
34.7. Canceling Queries in Progress .............................................................. 916
34.8. The Fast-Path Interface ....................................................................... 917
34.9. Asynchronous Notification ................................................................... 918
34.10. Functions Associated with the COPY Command ..................................... 919
34.11. Control Functions ............................................................................. 923
34.12. Miscellaneous Functions .................................................................... 925
34.13. Notice Processing ............................................................................. 929
34.14. Event System ................................................................................... 930
34.15. Environment Variables ...................................................................... 936
34.16. The Password File ............................................................................ 938
34.17. The Connection Service File ............................................................... 938
34.18. LDAP Lookup of Connection Parameters .............................................. 939
34.19. SSL Support .................................................................................... 940
34.20. Behavior in Threaded Programs .......................................................... 944
34.21. Building libpq Programs .................................................................... 945
34.22. Example Programs ............................................................................ 946
35. Large Objects .............................................................................................. 958
35.1. Introduction ....................................................................................... 958
35.2. Implementation Features ...................................................................... 958
35.3. Client Interfaces ................................................................................. 958
35.4. Server-Side Functions ......................................................................... 963
35.5. Example Program ............................................................................... 964
36. ECPG — Embedded SQL in C ....................................................................... 970
36.1. The Concept ...................................................................................... 970
36.2. Managing Database Connections ........................................................... 970
36.3. Running SQL Commands .................................................................... 974
36.4. Using Host Variables .......................................................................... 977
36.5. Dynamic SQL ................................................................................... 991
36.6. pgtypes Library .................................................................................. 993
36.7. Using Descriptor Areas ..................................................................... 1007
36.8. Error Handling ................................................................................. 1020
36.9. Preprocessor Directives ..................................................................... 1027
36.10. Processing Embedded SQL Programs ................................................. 1029
viii
PostgreSQL 15.1 Documentation
36.11. Library Functions ............................................................................ 1030
36.12. Large Objects ................................................................................. 1031
36.13. C++ Applications ............................................................................ 1032
36.14. Embedded SQL Commands .............................................................. 1036
36.15. Informix Compatibility Mode ............................................................ 1061
36.16. Oracle Compatibility Mode ............................................................... 1076
36.17. Internals ........................................................................................ 1076
37. The Information Schema .............................................................................. 1079
37.1. The Schema ..................................................................................... 1079
37.2. Data Types ...................................................................................... 1079
37.3. information_schema_catalog_name ........................................ 1080
37.4. administrable_role_authorizations .................................... 1080
37.5. applicable_roles ..................................................................... 1080
37.6. attributes ................................................................................. 1081
37.7. character_sets ......................................................................... 1083
37.8. check_constraint_routine_usage .......................................... 1084
37.9. check_constraints ................................................................... 1084
37.10. collations ................................................................................ 1085
37.11. collation_character_set_applicability .......................... 1085
37.12. column_column_usage .............................................................. 1086
37.13. column_domain_usage .............................................................. 1086
37.14. column_options ........................................................................ 1086
37.15. column_privileges .................................................................. 1087
37.16. column_udt_usage .................................................................... 1088
37.17. columns ...................................................................................... 1088
37.18. constraint_column_usage ...................................................... 1091
37.19. constraint_table_usage ........................................................ 1092
37.20. data_type_privileges ............................................................ 1092
37.21. domain_constraints ................................................................ 1093
37.22. domain_udt_usage .................................................................... 1093
37.23. domains ...................................................................................... 1094
37.24. element_types .......................................................................... 1096
37.25. enabled_roles .......................................................................... 1098
37.26. foreign_data_wrapper_options ............................................ 1098
37.27. foreign_data_wrappers .......................................................... 1099
37.28. foreign_server_options ........................................................ 1099
37.29. foreign_servers ...................................................................... 1099
37.30. foreign_table_options .......................................................... 1100
37.31. foreign_tables ........................................................................ 1100
37.32. key_column_usage .................................................................... 1101
37.33. parameters ................................................................................ 1101
37.34. referential_constraints ...................................................... 1103
37.35. role_column_grants ................................................................ 1104
37.36. role_routine_grants .............................................................. 1104
37.37. role_table_grants .................................................................. 1105
37.38. role_udt_grants ...................................................................... 1106
37.39. role_usage_grants .................................................................. 1106
37.40. routine_column_usage ............................................................ 1107
37.41. routine_privileges ................................................................ 1107
37.42. routine_routine_usage .......................................................... 1108
37.43. routine_sequence_usage ........................................................ 1109
37.44. routine_table_usage .............................................................. 1109
37.45. routines .................................................................................... 1110
37.46. schemata .................................................................................... 1114
37.47. sequences .................................................................................. 1114
37.48. sql_features ............................................................................ 1115
37.49. sql_implementation_info ...................................................... 1116
37.50. sql_parts .................................................................................. 1116
ix
PostgreSQL 15.1 Documentation
37.51. sql_sizing ................................................................................ 1117
37.52. table_constraints .................................................................. 1117
37.53. table_privileges .................................................................... 1118
37.54. tables ........................................................................................ 1118
37.55. transforms ................................................................................ 1119
37.56. triggered_update_columns .................................................... 1120
37.57. triggers .................................................................................... 1120
37.58. udt_privileges ........................................................................ 1122
37.59. usage_privileges .................................................................... 1122
37.60. user_defined_types ................................................................ 1123
37.61. user_mapping_options ............................................................ 1125
37.62. user_mappings .......................................................................... 1125
37.63. view_column_usage .................................................................. 1125
37.64. view_routine_usage ................................................................ 1126
37.65. view_table_usage .................................................................... 1126
37.66. views .......................................................................................... 1127
V. Server Programming ............................................................................................. 1129
38. Extending SQL ........................................................................................... 1135
38.1. How Extensibility Works ................................................................... 1135
38.2. The PostgreSQL Type System ............................................................ 1135
38.3. User-Defined Functions ..................................................................... 1138
38.4. User-Defined Procedures ................................................................... 1139
38.5. Query Language (SQL) Functions ....................................................... 1139
38.6. Function Overloading ........................................................................ 1156
38.7. Function Volatility Categories ............................................................. 1157
38.8. Procedural Language Functions ........................................................... 1158
38.9. Internal Functions ............................................................................. 1158
38.10. C-Language Functions ..................................................................... 1159
38.11. Function Optimization Information .................................................... 1180
38.12. User-Defined Aggregates ................................................................. 1181
38.13. User-Defined Types ........................................................................ 1188
38.14. User-Defined Operators ................................................................... 1192
38.15. Operator Optimization Information .................................................... 1193
38.16. Interfacing Extensions to Indexes ....................................................... 1197
38.17. Packaging Related Objects into an Extension ....................................... 1210
38.18. Extension Building Infrastructure ....................................................... 1218
39. Triggers ..................................................................................................... 1223
39.1. Overview of Trigger Behavior ............................................................ 1223
39.2. Visibility of Data Changes ................................................................. 1226
39.3. Writing Trigger Functions in C ........................................................... 1226
39.4. A Complete Trigger Example ............................................................. 1229
40. Event Triggers ............................................................................................ 1233
40.1. Overview of Event Trigger Behavior .................................................... 1233
40.2. Event Trigger Firing Matrix ............................................................... 1234
40.3. Writing Event Trigger Functions in C .................................................. 1237
40.4. A Complete Event Trigger Example .................................................... 1238
40.5. A Table Rewrite Event Trigger Example .............................................. 1239
41. The Rule System ........................................................................................ 1241
41.1. The Query Tree ................................................................................ 1241
41.2. Views and the Rule System ................................................................ 1242
41.3. Materialized Views ........................................................................... 1249
41.4. Rules on INSERT, UPDATE, and DELETE ........................................... 1252
41.5. Rules and Privileges .......................................................................... 1263
41.6. Rules and Command Status ................................................................ 1265
41.7. Rules Versus Triggers ....................................................................... 1265
42. Procedural Languages .................................................................................. 1268
42.1. Installing Procedural Languages .......................................................... 1268
43. PL/pgSQL — SQL Procedural Language ........................................................ 1271
x
PostgreSQL 15.1 Documentation
43.1. Overview ........................................................................................ 1271
43.2. Structure of PL/pgSQL ...................................................................... 1272
43.3. Declarations ..................................................................................... 1274
43.4. Expressions ..................................................................................... 1280
43.5. Basic Statements .............................................................................. 1281
43.6. Control Structures ............................................................................. 1289
43.7. Cursors ........................................................................................... 1304
43.8. Transaction Management ................................................................... 1310
43.9. Errors and Messages ......................................................................... 1311
43.10. Trigger Functions ............................................................................ 1313
43.11. PL/pgSQL under the Hood ............................................................... 1322
43.12. Tips for Developing in PL/pgSQL ..................................................... 1325
43.13. Porting from Oracle PL/SQL ............................................................ 1329
44. PL/Tcl — Tcl Procedural Language ............................................................... 1339
44.1. Overview ........................................................................................ 1339
44.2. PL/Tcl Functions and Arguments ........................................................ 1339
44.3. Data Values in PL/Tcl ....................................................................... 1341
44.4. Global Data in PL/Tcl ....................................................................... 1341
44.5. Database Access from PL/Tcl ............................................................. 1342
44.6. Trigger Functions in PL/Tcl ............................................................... 1344
44.7. Event Trigger Functions in PL/Tcl ....................................................... 1346
44.8. Error Handling in PL/Tcl ................................................................... 1346
44.9. Explicit Subtransactions in PL/Tcl ....................................................... 1347
44.10. Transaction Management .................................................................. 1348
44.11. PL/Tcl Configuration ....................................................................... 1349
44.12. Tcl Procedure Names ...................................................................... 1349
45. PL/Perl — Perl Procedural Language ............................................................. 1350
45.1. PL/Perl Functions and Arguments ....................................................... 1350
45.2. Data Values in PL/Perl ...................................................................... 1355
45.3. Built-in Functions ............................................................................. 1355
45.4. Global Values in PL/Perl ................................................................... 1360
45.5. Trusted and Untrusted PL/Perl ............................................................ 1361
45.6. PL/Perl Triggers ............................................................................... 1362
45.7. PL/Perl Event Triggers ...................................................................... 1363
45.8. PL/Perl Under the Hood .................................................................... 1364
46. PL/Python — Python Procedural Language ..................................................... 1366
46.1. PL/Python Functions ......................................................................... 1366
46.2. Data Values ..................................................................................... 1367
46.3. Sharing Data .................................................................................... 1372
46.4. Anonymous Code Blocks ................................................................... 1373
46.5. Trigger Functions ............................................................................. 1373
46.6. Database Access ............................................................................... 1374
46.7. Explicit Subtransactions ..................................................................... 1377
46.8. Transaction Management ................................................................... 1378
46.9. Utility Functions .............................................................................. 1379
46.10. Python 2 vs. Python 3 ..................................................................... 1380
46.11. Environment Variables ..................................................................... 1380
47. Server Programming Interface ....................................................................... 1382
47.1. Interface Functions ........................................................................... 1382
47.2. Interface Support Functions ................................................................ 1424
47.3. Memory Management ....................................................................... 1433
47.4. Transaction Management ................................................................... 1443
47.5. Visibility of Data Changes ................................................................. 1446
47.6. Examples ........................................................................................ 1446
48. Background Worker Processes ...................................................................... 1450
49. Logical Decoding ........................................................................................ 1453
49.1. Logical Decoding Examples ............................................................... 1453
49.2. Logical Decoding Concepts ................................................................ 1457
xi
PostgreSQL 15.1 Documentation
49.3. Streaming Replication Protocol Interface .............................................. 1458
49.4. Logical Decoding SQL Interface ......................................................... 1458
49.5. System Catalogs Related to Logical Decoding ....................................... 1458
49.6. Logical Decoding Output Plugins ........................................................ 1459
49.7. Logical Decoding Output Writers ........................................................ 1467
49.8. Synchronous Replication Support for Logical Decoding ........................... 1467
49.9. Streaming of Large Transactions for Logical Decoding ............................ 1467
49.10. Two-phase Commit Support for Logical Decoding ................................ 1469
50. Replication Progress Tracking ....................................................................... 1470
51. Archive Modules ........................................................................................ 1471
51.1. Initialization Functions ...................................................................... 1471
51.2. Archive Module Callbacks ................................................................. 1471
VI. Reference .......................................................................................................... 1473
I. SQL Commands ............................................................................................ 1478
ABORT .................................................................................................. 1482
ALTER AGGREGATE ............................................................................. 1483
ALTER COLLATION .............................................................................. 1485
ALTER CONVERSION ............................................................................ 1488
ALTER DATABASE ................................................................................ 1490
ALTER DEFAULT PRIVILEGES .............................................................. 1493
ALTER DOMAIN .................................................................................... 1496
ALTER EVENT TRIGGER ....................................................................... 1500
ALTER EXTENSION ............................................................................... 1501
ALTER FOREIGN DATA WRAPPER ........................................................ 1505
ALTER FOREIGN TABLE ....................................................................... 1507
ALTER FUNCTION ................................................................................. 1512
ALTER GROUP ...................................................................................... 1516
ALTER INDEX ....................................................................................... 1518
ALTER LANGUAGE ............................................................................... 1521
ALTER LARGE OBJECT ......................................................................... 1522
ALTER MATERIALIZED VIEW ............................................................... 1523
ALTER OPERATOR ................................................................................ 1525
ALTER OPERATOR CLASS .................................................................... 1527
ALTER OPERATOR FAMILY .................................................................. 1528
ALTER POLICY ..................................................................................... 1532
ALTER PROCEDURE .............................................................................. 1534
ALTER PUBLICATION ........................................................................... 1537
ALTER ROLE ......................................................................................... 1540
ALTER ROUTINE ................................................................................... 1544
ALTER RULE ......................................................................................... 1546
ALTER SCHEMA ................................................................................... 1547
ALTER SEQUENCE ................................................................................ 1548
ALTER SERVER ..................................................................................... 1551
ALTER STATISTICS ............................................................................... 1553
ALTER SUBSCRIPTION .......................................................................... 1554
ALTER SYSTEM .................................................................................... 1557
ALTER TABLE ....................................................................................... 1559
ALTER TABLESPACE ............................................................................ 1577
ALTER TEXT SEARCH CONFIGURATION .............................................. 1579
ALTER TEXT SEARCH DICTIONARY ..................................................... 1581
ALTER TEXT SEARCH PARSER ............................................................. 1583
ALTER TEXT SEARCH TEMPLATE ........................................................ 1584
ALTER TRIGGER ................................................................................... 1585
ALTER TYPE ......................................................................................... 1587
ALTER USER ......................................................................................... 1592
ALTER USER MAPPING ......................................................................... 1593
ALTER VIEW ......................................................................................... 1594
ANALYZE .............................................................................................. 1596
xii
PostgreSQL 15.1 Documentation
BEGIN ................................................................................................... 1599
CALL ..................................................................................................... 1601
CHECKPOINT ........................................................................................ 1603
CLOSE ................................................................................................... 1604
CLUSTER .............................................................................................. 1605
COMMENT ............................................................................................ 1608
COMMIT ................................................................................................ 1613
COMMIT PREPARED ............................................................................. 1614
COPY .................................................................................................... 1615
CREATE ACCESS METHOD ................................................................... 1625
CREATE AGGREGATE ........................................................................... 1626
CREATE CAST ....................................................................................... 1634
CREATE COLLATION ............................................................................ 1638
CREATE CONVERSION .......................................................................... 1641
CREATE DATABASE ............................................................................. 1643
CREATE DOMAIN ................................................................................. 1647
CREATE EVENT TRIGGER ..................................................................... 1650
CREATE EXTENSION ............................................................................ 1652
CREATE FOREIGN DATA WRAPPER ...................................................... 1655
CREATE FOREIGN TABLE ..................................................................... 1657
CREATE FUNCTION .............................................................................. 1662
CREATE GROUP .................................................................................... 1671
CREATE INDEX ..................................................................................... 1672
CREATE LANGUAGE ............................................................................. 1681
CREATE MATERIALIZED VIEW ............................................................. 1684
CREATE OPERATOR .............................................................................. 1686
CREATE OPERATOR CLASS .................................................................. 1689
CREATE OPERATOR FAMILY ................................................................ 1692
CREATE POLICY ................................................................................... 1693
CREATE PROCEDURE ........................................................................... 1699
CREATE PUBLICATION ......................................................................... 1703
CREATE ROLE ...................................................................................... 1707
CREATE RULE ...................................................................................... 1712
CREATE SCHEMA ................................................................................. 1715
CREATE SEQUENCE .............................................................................. 1718
CREATE SERVER .................................................................................. 1722
CREATE STATISTICS ............................................................................. 1724
CREATE SUBSCRIPTION ....................................................................... 1728
CREATE TABLE .................................................................................... 1732
CREATE TABLE AS ............................................................................... 1754
CREATE TABLESPACE .......................................................................... 1757
CREATE TEXT SEARCH CONFIGURATION ............................................ 1759
CREATE TEXT SEARCH DICTIONARY ................................................... 1760
CREATE TEXT SEARCH PARSER ........................................................... 1762
CREATE TEXT SEARCH TEMPLATE ...................................................... 1764
CREATE TRANSFORM ........................................................................... 1765
CREATE TRIGGER ................................................................................. 1767
CREATE TYPE ....................................................................................... 1774
CREATE USER ....................................................................................... 1783
CREATE USER MAPPING ....................................................................... 1784
CREATE VIEW ...................................................................................... 1786
DEALLOCATE ....................................................................................... 1792
DECLARE .............................................................................................. 1793
DELETE ................................................................................................. 1797
DISCARD ............................................................................................... 1800
DO ........................................................................................................ 1801
DROP ACCESS METHOD ....................................................................... 1803
DROP AGGREGATE ............................................................................... 1804
xiii
PostgreSQL 15.1 Documentation
DROP CAST ........................................................................................... 1806
DROP COLLATION ................................................................................ 1807
DROP CONVERSION .............................................................................. 1808
DROP DATABASE ................................................................................. 1809
DROP DOMAIN ...................................................................................... 1810
DROP EVENT TRIGGER ......................................................................... 1811
DROP EXTENSION ................................................................................. 1812
DROP FOREIGN DATA WRAPPER .......................................................... 1813
DROP FOREIGN TABLE ......................................................................... 1814
DROP FUNCTION .................................................................................. 1815
DROP GROUP ........................................................................................ 1817
DROP INDEX ......................................................................................... 1818
DROP LANGUAGE ................................................................................. 1820
DROP MATERIALIZED VIEW ................................................................. 1821
DROP OPERATOR .................................................................................. 1822
DROP OPERATOR CLASS ...................................................................... 1824
DROP OPERATOR FAMILY .................................................................... 1826
DROP OWNED ....................................................................................... 1828
DROP POLICY ....................................................................................... 1829
DROP PROCEDURE ............................................................................... 1830
DROP PUBLICATION ............................................................................. 1832
DROP ROLE .......................................................................................... 1833
DROP ROUTINE ..................................................................................... 1834
DROP RULE .......................................................................................... 1836
DROP SCHEMA ..................................................................................... 1837
DROP SEQUENCE .................................................................................. 1838
DROP SERVER ...................................................................................... 1839
DROP STATISTICS ................................................................................. 1840
DROP SUBSCRIPTION ............................................................................ 1841
DROP TABLE ........................................................................................ 1843
DROP TABLESPACE .............................................................................. 1844
DROP TEXT SEARCH CONFIGURATION ................................................ 1845
DROP TEXT SEARCH DICTIONARY ....................................................... 1846
DROP TEXT SEARCH PARSER ............................................................... 1847
DROP TEXT SEARCH TEMPLATE .......................................................... 1848
DROP TRANSFORM ............................................................................... 1849
DROP TRIGGER ..................................................................................... 1850
DROP TYPE ........................................................................................... 1851
DROP USER ........................................................................................... 1852
DROP USER MAPPING ........................................................................... 1853
DROP VIEW .......................................................................................... 1854
END ...................................................................................................... 1855
EXECUTE .............................................................................................. 1856
EXPLAIN ............................................................................................... 1857
FETCH ................................................................................................... 1862
GRANT .................................................................................................. 1866
IMPORT FOREIGN SCHEMA .................................................................. 1871
INSERT .................................................................................................. 1873
LISTEN .................................................................................................. 1881
LOAD .................................................................................................... 1883
LOCK .................................................................................................... 1884
MERGE .................................................................................................. 1887
MOVE ................................................................................................... 1893
NOTIFY ................................................................................................. 1895
PREPARE ............................................................................................... 1898
PREPARE TRANSACTION ...................................................................... 1901
REASSIGN OWNED ............................................................................... 1903
REFRESH MATERIALIZED VIEW ........................................................... 1904
xiv
PostgreSQL 15.1 Documentation
REINDEX ............................................................................................... 1906
RELEASE SAVEPOINT ........................................................................... 1911
RESET ................................................................................................... 1913
REVOKE ................................................................................................ 1914
ROLLBACK ........................................................................................... 1918
ROLLBACK PREPARED ......................................................................... 1919
ROLLBACK TO SAVEPOINT .................................................................. 1920
SAVEPOINT ........................................................................................... 1922
SECURITY LABEL ................................................................................. 1924
SELECT ................................................................................................. 1927
SELECT INTO ........................................................................................ 1949
SET ....................................................................................................... 1951
SET CONSTRAINTS ............................................................................... 1954
SET ROLE ............................................................................................. 1955
SET SESSION AUTHORIZATION ............................................................ 1957
SET TRANSACTION ............................................................................... 1959
SHOW ................................................................................................... 1962
START TRANSACTION .......................................................................... 1964
TRUNCATE ........................................................................................... 1965
UNLISTEN ............................................................................................. 1967
UPDATE ................................................................................................ 1969
VACUUM .............................................................................................. 1974
VALUES ................................................................................................ 1978
II. PostgreSQL Client Applications ..................................................................... 1981
clusterdb ................................................................................................. 1982
createdb .................................................................................................. 1985
createuser ................................................................................................ 1989
dropdb .................................................................................................... 1993
dropuser .................................................................................................. 1996
ecpg ....................................................................................................... 1999
pg_amcheck ............................................................................................ 2002
pg_basebackup ......................................................................................... 2008
pgbench .................................................................................................. 2017
pg_config ................................................................................................ 2041
pg_dump ................................................................................................. 2044
pg_dumpall ............................................................................................. 2057
pg_isready ............................................................................................... 2064
pg_receivewal .......................................................................................... 2066
pg_recvlogical ......................................................................................... 2071
pg_restore ............................................................................................... 2075
pg_verifybackup ....................................................................................... 2084
psql ........................................................................................................ 2087
reindexdb ................................................................................................ 2130
vacuumdb ............................................................................................... 2134
III. PostgreSQL Server Applications .................................................................... 2140
initdb ..................................................................................................... 2141
pg_archivecleanup .................................................................................... 2146
pg_checksums .......................................................................................... 2148
pg_controldata ......................................................................................... 2150
pg_ctl ..................................................................................................... 2151
pg_resetwal ............................................................................................. 2157
pg_rewind ............................................................................................... 2161
pg_test_fsync ........................................................................................... 2165
pg_test_timing ......................................................................................... 2166
pg_upgrade .............................................................................................. 2170
pg_waldump ............................................................................................ 2179
postgres .................................................................................................. 2182
postmaster ............................................................................................... 2189
xv
PostgreSQL 15.1 Documentation
VII. Internals ........................................................................................................... 2190
52. Overview of PostgreSQL Internals ................................................................. 2196
52.1. The Path of a Query ......................................................................... 2196
52.2. How Connections Are Established ....................................................... 2196
52.3. The Parser Stage .............................................................................. 2197
52.4. The PostgreSQL Rule System ............................................................. 2198
52.5. Planner/Optimizer ............................................................................. 2198
52.6. Executor ......................................................................................... 2199
53. System Catalogs ......................................................................................... 2201
53.1. Overview ........................................................................................ 2201
53.2. pg_aggregate ............................................................................. 2203
53.3. pg_am ........................................................................................... 2204
53.4. pg_amop ....................................................................................... 2205
53.5. pg_amproc ................................................................................... 2206
53.6. pg_attrdef ................................................................................. 2206
53.7. pg_attribute ............................................................................. 2207
53.8. pg_authid ................................................................................... 2209
53.9. pg_auth_members ....................................................................... 2210
53.10. pg_cast ...................................................................................... 2210
53.11. pg_class .................................................................................... 2211
53.12. pg_collation ............................................................................ 2213
53.13. pg_constraint .......................................................................... 2214
53.14. pg_conversion .......................................................................... 2216
53.15. pg_database .............................................................................. 2217
53.16. pg_db_role_setting ................................................................ 2218
53.17. pg_default_acl ........................................................................ 2218
53.18. pg_depend .................................................................................. 2219
53.19. pg_description ........................................................................ 2221
53.20. pg_enum ...................................................................................... 2221
53.21. pg_event_trigger .................................................................... 2222
53.22. pg_extension ............................................................................ 2222
53.23. pg_foreign_data_wrapper ...................................................... 2223
53.24. pg_foreign_server .................................................................. 2223
53.25. pg_foreign_table .................................................................... 2224
53.26. pg_index .................................................................................... 2224
53.27. pg_inherits .............................................................................. 2226
53.28. pg_init_privs .......................................................................... 2226
53.29. pg_language .............................................................................. 2227
53.30. pg_largeobject ........................................................................ 2228
53.31. pg_largeobject_metadata ...................................................... 2228
53.32. pg_namespace ............................................................................ 2228
53.33. pg_opclass ................................................................................ 2229
53.34. pg_operator .............................................................................. 2229
53.35. pg_opfamily .............................................................................. 2230
53.36. pg_parameter_acl .................................................................... 2231
53.37. pg_partitioned_table ............................................................ 2231
53.38. pg_policy .................................................................................. 2232
53.39. pg_proc ...................................................................................... 2233
53.40. pg_publication ........................................................................ 2235
53.41. pg_publication_namespace .................................................... 2236
53.42. pg_publication_rel ................................................................ 2236
53.43. pg_range .................................................................................... 2236
53.44. pg_replication_origin .......................................................... 2237
53.45. pg_rewrite ................................................................................ 2237
53.46. pg_seclabel .............................................................................. 2238
53.47. pg_sequence .............................................................................. 2238
53.48. pg_shdepend .............................................................................. 2239
53.49. pg_shdescription .................................................................... 2240
xvi
PostgreSQL 15.1 Documentation
53.50. pg_shseclabel .......................................................................... 2240
53.51. pg_statistic ............................................................................ 2241
53.52. pg_statistic_ext .................................................................... 2242
53.53. pg_statistic_ext_data .......................................................... 2243
53.54. pg_subscription ...................................................................... 2244
53.55. pg_subscription_rel .............................................................. 2245
53.56. pg_tablespace .......................................................................... 2245
53.57. pg_transform ............................................................................ 2246
53.58. pg_trigger ................................................................................ 2246
53.59. pg_ts_config ............................................................................ 2248
53.60. pg_ts_config_map .................................................................... 2248
53.61. pg_ts_dict ................................................................................ 2248
53.62. pg_ts_parser ............................................................................ 2249
53.63. pg_ts_template ........................................................................ 2249
53.64. pg_type ...................................................................................... 2250
53.65. pg_user_mapping ...................................................................... 2253
54. System Views ............................................................................................ 2254
54.1. Overview ........................................................................................ 2254
54.2. pg_available_extensions ........................................................ 2255
54.3. pg_available_extension_versions ........................................ 2255
54.4. pg_backend_memory_contexts .................................................. 2256
54.5. pg_config ................................................................................... 2257
54.6. pg_cursors ................................................................................. 2257
54.7. pg_file_settings ..................................................................... 2258
54.8. pg_group ..................................................................................... 2259
54.9. pg_hba_file_rules ................................................................... 2259
54.10. pg_ident_file_mappings ........................................................ 2260
54.11. pg_indexes ................................................................................ 2260
54.12. pg_locks .................................................................................... 2261
54.13. pg_matviews .............................................................................. 2263
54.14. pg_policies .............................................................................. 2264
54.15. pg_prepared_statements ........................................................ 2264
54.16. pg_prepared_xacts .................................................................. 2265
54.17. pg_publication_tables .......................................................... 2266
54.18. pg_replication_origin_status ............................................ 2266
54.19. pg_replication_slots ............................................................ 2267
54.20. pg_roles .................................................................................... 2268
54.21. pg_rules .................................................................................... 2269
54.22. pg_seclabels ............................................................................ 2269
54.23. pg_sequences ............................................................................ 2270
54.24. pg_settings .............................................................................. 2270
54.25. pg_shadow .................................................................................. 2272
54.26. pg_shmem_allocations ............................................................ 2273
54.27. pg_stats .................................................................................... 2274
54.28. pg_stats_ext ............................................................................ 2275
54.29. pg_stats_ext_exprs ................................................................ 2276
54.30. pg_tables .................................................................................. 2278
54.31. pg_timezone_abbrevs .............................................................. 2278
54.32. pg_timezone_names .................................................................. 2279
54.33. pg_user ...................................................................................... 2279
54.34. pg_user_mappings .................................................................... 2280
54.35. pg_views .................................................................................... 2280
55. Frontend/Backend Protocol ........................................................................... 2282
55.1. Overview ........................................................................................ 2282
55.2. Message Flow .................................................................................. 2283
55.3. SASL Authentication ........................................................................ 2297
55.4. Streaming Replication Protocol ........................................................... 2299
55.5. Logical Streaming Replication Protocol ................................................ 2308
xvii
PostgreSQL 15.1 Documentation
55.6. Message Data Types ......................................................................... 2309
55.7. Message Formats .............................................................................. 2309
55.8. Error and Notice Message Fields ......................................................... 2326
55.9. Logical Replication Message Formats .................................................. 2328
55.10. Summary of Changes since Protocol 2.0 ............................................. 2337
56. PostgreSQL Coding Conventions ................................................................... 2339
56.1. Formatting ....................................................................................... 2339
56.2. Reporting Errors Within the Server ...................................................... 2339
56.3. Error Message Style Guide ................................................................. 2343
56.4. Miscellaneous Coding Conventions ...................................................... 2347
57. Native Language Support ............................................................................. 2349
57.1. For the Translator ............................................................................. 2349
57.2. For the Programmer .......................................................................... 2351
58. Writing a Procedural Language Handler .......................................................... 2355
59. Writing a Foreign Data Wrapper .................................................................... 2357
59.1. Foreign Data Wrapper Functions ......................................................... 2357
59.2. Foreign Data Wrapper Callback Routines .............................................. 2357
59.3. Foreign Data Wrapper Helper Functions ............................................... 2373
59.4. Foreign Data Wrapper Query Planning ................................................. 2374
59.5. Row Locking in Foreign Data Wrappers ............................................... 2376
60. Writing a Table Sampling Method ................................................................. 2378
60.1. Sampling Method Support Functions .................................................... 2378
61. Writing a Custom Scan Provider .................................................................... 2381
61.1. Creating Custom Scan Paths ............................................................... 2381
61.2. Creating Custom Scan Plans ............................................................... 2382
61.3. Executing Custom Scans .................................................................... 2383
62. Genetic Query Optimizer .............................................................................. 2386
62.1. Query Handling as a Complex Optimization Problem .............................. 2386
62.2. Genetic Algorithms ........................................................................... 2386
62.3. Genetic Query Optimization (GEQO) in PostgreSQL .............................. 2387
62.4. Further Reading ............................................................................... 2389
63. Table Access Method Interface Definition ....................................................... 2390
64. Index Access Method Interface Definition ....................................................... 2391
64.1. Basic API Structure for Indexes .......................................................... 2391
64.2. Index Access Method Functions .......................................................... 2394
64.3. Index Scanning ................................................................................ 2399
64.4. Index Locking Considerations ............................................................. 2401
64.5. Index Uniqueness Checks .................................................................. 2402
64.6. Index Cost Estimation Functions ......................................................... 2403
65. Generic WAL Records ................................................................................. 2406
66. Custom WAL Resource Managers ................................................................. 2408
67. B-Tree Indexes ........................................................................................... 2410
67.1. Introduction ..................................................................................... 2410
67.2. Behavior of B-Tree Operator Classes ................................................... 2410
67.3. B-Tree Support Functions .................................................................. 2411
67.4. Implementation ................................................................................ 2414
68. GiST Indexes ............................................................................................. 2417
68.1. Introduction ..................................................................................... 2417
68.2. Built-in Operator Classes ................................................................... 2417
68.3. Extensibility .................................................................................... 2420
68.4. Implementation ................................................................................ 2433
68.5. Examples ........................................................................................ 2433
69. SP-GiST Indexes ........................................................................................ 2435
69.1. Introduction ..................................................................................... 2435
69.2. Built-in Operator Classes ................................................................... 2435
69.3. Extensibility .................................................................................... 2437
69.4. Implementation ................................................................................ 2446
69.5. Examples ........................................................................................ 2447
xviii
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1
Postgresql v15.1

More Related Content

Similar to Postgresql v15.1

Innodb 1.1 for mysql 5.5 user's guide
Innodb 1.1 for mysql 5.5 user's guideInnodb 1.1 for mysql 5.5 user's guide
Innodb 1.1 for mysql 5.5 user's guidemysqlpub
 
Oracle pl-sql user's guide & reference
Oracle   pl-sql user's guide & referenceOracle   pl-sql user's guide & reference
Oracle pl-sql user's guide & referencedesitaria
 
Coherence developer's guide
Coherence developer's guideCoherence developer's guide
Coherence developer's guidewangdun119
 
Postgresql 8.4.0-us
Postgresql 8.4.0-usPostgresql 8.4.0-us
Postgresql 8.4.0-usJoy Cuerquis
 
Odi installation guide
Odi installation guideOdi installation guide
Odi installation guideprakashdas05
 
oracle finance E13422
oracle finance E13422oracle finance E13422
oracle finance E13422Vijay Kumar
 
Osb developer's guide
Osb developer's guideOsb developer's guide
Osb developer's guideHarish B
 
APM81SP1_RevA_Installation_Book
APM81SP1_RevA_Installation_BookAPM81SP1_RevA_Installation_Book
APM81SP1_RevA_Installation_BookDavid_Tickner
 
GoldenGate Fundamentals Student Guide Version 10.4
GoldenGate Fundamentals Student Guide Version 10.4 GoldenGate Fundamentals Student Guide Version 10.4
GoldenGate Fundamentals Student Guide Version 10.4 voyna
 
Oracle database 12c client installation overview
Oracle database 12c client installation overviewOracle database 12c client installation overview
Oracle database 12c client installation overviewbupbechanhgmail
 

Similar to Postgresql v15.1 (20)

Innodb 1.1 for mysql 5.5 user's guide
Innodb 1.1 for mysql 5.5 user's guideInnodb 1.1 for mysql 5.5 user's guide
Innodb 1.1 for mysql 5.5 user's guide
 
Oracle pl-sql user's guide & reference
Oracle   pl-sql user's guide & referenceOracle   pl-sql user's guide & reference
Oracle pl-sql user's guide & reference
 
E49462 01
E49462 01E49462 01
E49462 01
 
Kes8.0 linuxwks installation_en
Kes8.0 linuxwks installation_enKes8.0 linuxwks installation_en
Kes8.0 linuxwks installation_en
 
Plsql
PlsqlPlsql
Plsql
 
Adf tutorial oracle
Adf tutorial oracleAdf tutorial oracle
Adf tutorial oracle
 
Coherence developer's guide
Coherence developer's guideCoherence developer's guide
Coherence developer's guide
 
122qpug
122qpug122qpug
122qpug
 
Postgresql 8.4.0-us
Postgresql 8.4.0-usPostgresql 8.4.0-us
Postgresql 8.4.0-us
 
Odi installation guide
Odi installation guideOdi installation guide
Odi installation guide
 
Oracle_9i_Database_Getting_started
Oracle_9i_Database_Getting_startedOracle_9i_Database_Getting_started
Oracle_9i_Database_Getting_started
 
1 Rac
1 Rac1 Rac
1 Rac
 
1 Pdfsam
1 Pdfsam1 Pdfsam
1 Pdfsam
 
oracle finance E13422
oracle finance E13422oracle finance E13422
oracle finance E13422
 
Osb developer's guide
Osb developer's guideOsb developer's guide
Osb developer's guide
 
APM81SP1_RevA_Installation_Book
APM81SP1_RevA_Installation_BookAPM81SP1_RevA_Installation_Book
APM81SP1_RevA_Installation_Book
 
GoldenGate Fundamentals Student Guide Version 10.4
GoldenGate Fundamentals Student Guide Version 10.4 GoldenGate Fundamentals Student Guide Version 10.4
GoldenGate Fundamentals Student Guide Version 10.4
 
Proc
ProcProc
Proc
 
Oracle database 12c client installation overview
Oracle database 12c client installation overviewOracle database 12c client installation overview
Oracle database 12c client installation overview
 
Gltrm
GltrmGltrm
Gltrm
 

More from Banking at Ho Chi Minh city

IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0Banking at Ho Chi Minh city
 
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1Banking at Ho Chi Minh city
 
IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1Banking at Ho Chi Minh city
 
IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3Banking at Ho Chi Minh city
 
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1Banking at Ho Chi Minh city
 
Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Banking at Ho Chi Minh city
 
Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Banking at Ho Chi Minh city
 
Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Banking at Ho Chi Minh city
 
Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Banking at Ho Chi Minh city
 
Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Banking at Ho Chi Minh city
 
Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Banking at Ho Chi Minh city
 
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Banking at Ho Chi Minh city
 
Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Banking at Ho Chi Minh city
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Banking at Ho Chi Minh city
 

More from Banking at Ho Chi Minh city (20)

IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1
 
IBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech OverviewIBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech Overview
 
IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0
 
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
 
IBM MobileFirst Platform v7.0 pot intro v0.1
IBM MobileFirst Platform v7.0 pot intro v0.1IBM MobileFirst Platform v7.0 pot intro v0.1
IBM MobileFirst Platform v7.0 pot intro v0.1
 
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
 
IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1
 
IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3
 
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
 
Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867
 
Tivoli firewall magic redp0227
Tivoli firewall magic redp0227Tivoli firewall magic redp0227
Tivoli firewall magic redp0227
 
Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343
 
Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116
 
Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...
 
Tec implementation examples sg245216
Tec implementation examples sg245216Tec implementation examples sg245216
Tec implementation examples sg245216
 
Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415
 
Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894
 
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
 
Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...
 

Recently uploaded

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringWSO2
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 

Postgresql v15.1

  • 1. PostgreSQL 15.1 Documentation The PostgreSQL Global Development Group
  • 2. PostgreSQL 15.1 Documentation The PostgreSQL Global Development Group Copyright © 1996–2022 The PostgreSQL Global Development Group Legal Notice PostgreSQL is Copyright © 1996–2022 by the PostgreSQL Global Development Group. Postgres95 is Copyright © 1994–5 by the Regents of the University of California. Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies. IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN “AS-IS” BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAIN- TENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  • 3. Table of Contents Preface ................................................................................................................... xxxii 1. What Is PostgreSQL? .................................................................................... xxxii 2. A Brief History of PostgreSQL ....................................................................... xxxii 2.1. The Berkeley POSTGRES Project ........................................................ xxxiii 2.2. Postgres95 ....................................................................................... xxxiii 2.3. PostgreSQL ...................................................................................... xxxiv 3. Conventions ................................................................................................ xxxiv 4. Further Information ...................................................................................... xxxiv 5. Bug Reporting Guidelines .............................................................................. xxxv 5.1. Identifying Bugs ................................................................................ xxxv 5.2. What to Report ................................................................................. xxxvi 5.3. Where to Report Bugs ....................................................................... xxxvii I. Tutorial .................................................................................................................... 1 1. Getting Started .................................................................................................. 3 1.1. Installation ............................................................................................. 3 1.2. Architectural Fundamentals ....................................................................... 3 1.3. Creating a Database ................................................................................. 3 1.4. Accessing a Database .............................................................................. 5 2. The SQL Language ............................................................................................ 7 2.1. Introduction ............................................................................................ 7 2.2. Concepts ................................................................................................ 7 2.3. Creating a New Table .............................................................................. 7 2.4. Populating a Table With Rows .................................................................. 8 2.5. Querying a Table .................................................................................... 9 2.6. Joins Between Tables ............................................................................. 11 2.7. Aggregate Functions .............................................................................. 13 2.8. Updates ............................................................................................... 14 2.9. Deletions .............................................................................................. 15 3. Advanced Features ........................................................................................... 16 3.1. Introduction .......................................................................................... 16 3.2. Views .................................................................................................. 16 3.3. Foreign Keys ........................................................................................ 16 3.4. Transactions ......................................................................................... 17 3.5. Window Functions ................................................................................. 19 3.6. Inheritance ........................................................................................... 22 3.7. Conclusion ........................................................................................... 23 II. The SQL Language ................................................................................................. 24 4. SQL Syntax .................................................................................................... 32 4.1. Lexical Structure ................................................................................... 32 4.2. Value Expressions ................................................................................. 41 4.3. Calling Functions .................................................................................. 54 5. Data Definition ................................................................................................ 57 5.1. Table Basics ......................................................................................... 57 5.2. Default Values ...................................................................................... 58 5.3. Generated Columns ................................................................................ 59 5.4. Constraints ........................................................................................... 60 5.5. System Columns ................................................................................... 69 5.6. Modifying Tables .................................................................................. 70 5.7. Privileges ............................................................................................. 73 5.8. Row Security Policies ............................................................................ 77 5.9. Schemas ............................................................................................... 84 5.10. Inheritance .......................................................................................... 88 5.11. Table Partitioning ................................................................................ 92 5.12. Foreign Data ..................................................................................... 106 5.13. Other Database Objects ....................................................................... 106 iii
  • 4. PostgreSQL 15.1 Documentation 5.14. Dependency Tracking ......................................................................... 106 6. Data Manipulation .......................................................................................... 108 6.1. Inserting Data ..................................................................................... 108 6.2. Updating Data ..................................................................................... 109 6.3. Deleting Data ...................................................................................... 110 6.4. Returning Data from Modified Rows ....................................................... 110 7. Queries ......................................................................................................... 112 7.1. Overview ............................................................................................ 112 7.2. Table Expressions ................................................................................ 112 7.3. Select Lists ......................................................................................... 128 7.4. Combining Queries (UNION, INTERSECT, EXCEPT) ................................ 130 7.5. Sorting Rows (ORDER BY) .................................................................. 131 7.6. LIMIT and OFFSET ............................................................................ 132 7.7. VALUES Lists ..................................................................................... 132 7.8. WITH Queries (Common Table Expressions) ............................................ 133 8. Data Types .................................................................................................... 143 8.1. Numeric Types .................................................................................... 144 8.2. Monetary Types ................................................................................... 150 8.3. Character Types ................................................................................... 151 8.4. Binary Data Types ............................................................................... 153 8.5. Date/Time Types ................................................................................. 154 8.6. Boolean Type ...................................................................................... 164 8.7. Enumerated Types ............................................................................... 165 8.8. Geometric Types ................................................................................. 167 8.9. Network Address Types ........................................................................ 169 8.10. Bit String Types ................................................................................ 172 8.11. Text Search Types .............................................................................. 173 8.12. UUID Type ....................................................................................... 176 8.13. XML Type ........................................................................................ 176 8.14. JSON Types ...................................................................................... 178 8.15. Arrays .............................................................................................. 188 8.16. Composite Types ............................................................................... 198 8.17. Range Types ..................................................................................... 204 8.18. Domain Types ................................................................................... 210 8.19. Object Identifier Types ....................................................................... 211 8.20. pg_lsn Type ................................................................................... 213 8.21. Pseudo-Types .................................................................................... 213 9. Functions and Operators .................................................................................. 216 9.1. Logical Operators ................................................................................ 216 9.2. Comparison Functions and Operators ...................................................... 217 9.3. Mathematical Functions and Operators .................................................... 221 9.4. String Functions and Operators .............................................................. 228 9.5. Binary String Functions and Operators .................................................... 238 9.6. Bit String Functions and Operators ......................................................... 242 9.7. Pattern Matching ................................................................................. 244 9.8. Data Type Formatting Functions ............................................................. 263 9.9. Date/Time Functions and Operators ........................................................ 271 9.10. Enum Support Functions ..................................................................... 287 9.11. Geometric Functions and Operators ....................................................... 288 9.12. Network Address Functions and Operators .............................................. 295 9.13. Text Search Functions and Operators ..................................................... 298 9.14. UUID Functions ................................................................................ 304 9.15. XML Functions ................................................................................. 304 9.16. JSON Functions and Operators ............................................................. 319 9.17. Sequence Manipulation Functions ......................................................... 337 9.18. Conditional Expressions ...................................................................... 338 9.19. Array Functions and Operators ............................................................. 341 9.20. Range/Multirange Functions and Operators ............................................. 345 iv
  • 5. PostgreSQL 15.1 Documentation 9.21. Aggregate Functions ........................................................................... 350 9.22. Window Functions ............................................................................. 357 9.23. Subquery Expressions ......................................................................... 358 9.24. Row and Array Comparisons ............................................................... 361 9.25. Set Returning Functions ...................................................................... 364 9.26. System Information Functions and Operators .......................................... 367 9.27. System Administration Functions .......................................................... 385 9.28. Trigger Functions ............................................................................... 401 9.29. Event Trigger Functions ...................................................................... 402 9.30. Statistics Information Functions ............................................................ 405 10. Type Conversion .......................................................................................... 407 10.1. Overview .......................................................................................... 407 10.2. Operators .......................................................................................... 408 10.3. Functions .......................................................................................... 412 10.4. Value Storage .................................................................................... 416 10.5. UNION, CASE, and Related Constructs .................................................. 417 10.6. SELECT Output Columns .................................................................... 418 11. Indexes ....................................................................................................... 420 11.1. Introduction ....................................................................................... 420 11.2. Index Types ...................................................................................... 421 11.3. Multicolumn Indexes .......................................................................... 423 11.4. Indexes and ORDER BY ..................................................................... 424 11.5. Combining Multiple Indexes ................................................................ 425 11.6. Unique Indexes .................................................................................. 425 11.7. Indexes on Expressions ....................................................................... 426 11.8. Partial Indexes ................................................................................... 426 11.9. Index-Only Scans and Covering Indexes ................................................ 429 11.10. Operator Classes and Operator Families ................................................ 432 11.11. Indexes and Collations ...................................................................... 433 11.12. Examining Index Usage ..................................................................... 434 12. Full Text Search ........................................................................................... 436 12.1. Introduction ....................................................................................... 436 12.2. Tables and Indexes ............................................................................. 440 12.3. Controlling Text Search ...................................................................... 442 12.4. Additional Features ............................................................................ 449 12.5. Parsers ............................................................................................. 455 12.6. Dictionaries ....................................................................................... 456 12.7. Configuration Example ....................................................................... 466 12.8. Testing and Debugging Text Search ...................................................... 467 12.9. Preferred Index Types for Text Search ................................................... 472 12.10. psql Support .................................................................................... 473 12.11. Limitations ...................................................................................... 476 13. Concurrency Control ..................................................................................... 477 13.1. Introduction ....................................................................................... 477 13.2. Transaction Isolation ........................................................................... 477 13.3. Explicit Locking ................................................................................ 483 13.4. Data Consistency Checks at the Application Level ................................... 489 13.5. Serialization Failure Handling .............................................................. 490 13.6. Caveats ............................................................................................. 491 13.7. Locking and Indexes ........................................................................... 491 14. Performance Tips ......................................................................................... 493 14.1. Using EXPLAIN ................................................................................ 493 14.2. Statistics Used by the Planner .............................................................. 505 14.3. Controlling the Planner with Explicit JOIN Clauses ................................. 510 14.4. Populating a Database ......................................................................... 512 14.5. Non-Durable Settings .......................................................................... 515 15. Parallel Query .............................................................................................. 516 15.1. How Parallel Query Works .................................................................. 516 v
  • 6. PostgreSQL 15.1 Documentation 15.2. When Can Parallel Query Be Used? ...................................................... 517 15.3. Parallel Plans ..................................................................................... 518 15.4. Parallel Safety ................................................................................... 520 III. Server Administration ............................................................................................ 522 16. Installation from Binaries ............................................................................... 529 17. Installation from Source Code ......................................................................... 530 17.1. Short Version .................................................................................... 530 17.2. Requirements ..................................................................................... 530 17.3. Getting the Source .............................................................................. 532 17.4. Installation Procedure .......................................................................... 532 17.5. Post-Installation Setup ......................................................................... 544 17.6. Supported Platforms ........................................................................... 546 17.7. Platform-Specific Notes ....................................................................... 546 18. Installation from Source Code on Windows ....................................................... 551 18.1. Building with Visual C++ or the Microsoft Windows SDK ........................ 551 19. Server Setup and Operation ............................................................................ 557 19.1. The PostgreSQL User Account ............................................................. 557 19.2. Creating a Database Cluster ................................................................. 557 19.3. Starting the Database Server ................................................................ 559 19.4. Managing Kernel Resources ................................................................. 563 19.5. Shutting Down the Server .................................................................... 571 19.6. Upgrading a PostgreSQL Cluster .......................................................... 572 19.7. Preventing Server Spoofing .................................................................. 574 19.8. Encryption Options ............................................................................. 575 19.9. Secure TCP/IP Connections with SSL .................................................... 576 19.10. Secure TCP/IP Connections with GSSAPI Encryption ............................. 580 19.11. Secure TCP/IP Connections with SSH Tunnels ...................................... 580 19.12. Registering Event Log on Windows ..................................................... 581 20. Server Configuration ..................................................................................... 583 20.1. Setting Parameters .............................................................................. 583 20.2. File Locations .................................................................................... 587 20.3. Connections and Authentication ............................................................ 588 20.4. Resource Consumption ........................................................................ 595 20.5. Write Ahead Log ............................................................................... 603 20.6. Replication ........................................................................................ 613 20.7. Query Planning .................................................................................. 620 20.8. Error Reporting and Logging ............................................................... 627 20.9. Run-time Statistics ............................................................................. 640 20.10. Automatic Vacuuming ....................................................................... 642 20.11. Client Connection Defaults ................................................................. 644 20.12. Lock Management ............................................................................ 654 20.13. Version and Platform Compatibility ..................................................... 655 20.14. Error Handling ................................................................................. 657 20.15. Preset Options .................................................................................. 657 20.16. Customized Options .......................................................................... 659 20.17. Developer Options ............................................................................ 660 20.18. Short Options ................................................................................... 664 21. Client Authentication ..................................................................................... 666 21.1. The pg_hba.conf File ..................................................................... 666 21.2. User Name Maps ............................................................................... 674 21.3. Authentication Methods ....................................................................... 676 21.4. Trust Authentication ........................................................................... 676 21.5. Password Authentication ..................................................................... 677 21.6. GSSAPI Authentication ....................................................................... 678 21.7. SSPI Authentication ............................................................................ 679 21.8. Ident Authentication ........................................................................... 680 21.9. Peer Authentication ............................................................................ 681 21.10. LDAP Authentication ........................................................................ 681 vi
  • 7. PostgreSQL 15.1 Documentation 21.11. RADIUS Authentication .................................................................... 684 21.12. Certificate Authentication ................................................................... 685 21.13. PAM Authentication ......................................................................... 685 21.14. BSD Authentication .......................................................................... 686 21.15. Authentication Problems .................................................................... 686 22. Database Roles ............................................................................................. 688 22.1. Database Roles .................................................................................. 688 22.2. Role Attributes .................................................................................. 689 22.3. Role Membership ............................................................................... 690 22.4. Dropping Roles .................................................................................. 692 22.5. Predefined Roles ................................................................................ 692 22.6. Function Security ............................................................................... 694 23. Managing Databases ..................................................................................... 695 23.1. Overview .......................................................................................... 695 23.2. Creating a Database ............................................................................ 695 23.3. Template Databases ............................................................................ 696 23.4. Database Configuration ....................................................................... 698 23.5. Destroying a Database ........................................................................ 698 23.6. Tablespaces ....................................................................................... 698 24. Localization ................................................................................................. 701 24.1. Locale Support .................................................................................. 701 24.2. Collation Support ............................................................................... 704 24.3. Character Set Support ......................................................................... 710 25. Routine Database Maintenance Tasks ............................................................... 720 25.1. Routine Vacuuming ............................................................................ 720 25.2. Routine Reindexing ............................................................................ 728 25.3. Log File Maintenance ......................................................................... 729 26. Backup and Restore ...................................................................................... 731 26.1. SQL Dump ....................................................................................... 731 26.2. File System Level Backup ................................................................... 734 26.3. Continuous Archiving and Point-in-Time Recovery (PITR) ........................ 735 27. High Availability, Load Balancing, and Replication ............................................ 746 27.1. Comparison of Different Solutions ........................................................ 746 27.2. Log-Shipping Standby Servers .............................................................. 749 27.3. Failover ............................................................................................ 758 27.4. Hot Standby ...................................................................................... 759 28. Monitoring Database Activity ......................................................................... 767 28.1. Standard Unix Tools ........................................................................... 767 28.2. The Cumulative Statistics System ......................................................... 768 28.3. Viewing Locks .................................................................................. 803 28.4. Progress Reporting ............................................................................. 803 28.5. Dynamic Tracing ............................................................................... 811 29. Monitoring Disk Usage .................................................................................. 821 29.1. Determining Disk Usage ..................................................................... 821 29.2. Disk Full Failure ................................................................................ 822 30. Reliability and the Write-Ahead Log ................................................................ 823 30.1. Reliability ......................................................................................... 823 30.2. Data Checksums ................................................................................ 825 30.3. Write-Ahead Logging (WAL) ............................................................... 825 30.4. Asynchronous Commit ........................................................................ 826 30.5. WAL Configuration ............................................................................ 827 30.6. WAL Internals ................................................................................... 830 31. Logical Replication ....................................................................................... 832 31.1. Publication ........................................................................................ 832 31.2. Subscription ...................................................................................... 833 31.3. Row Filters ....................................................................................... 837 31.4. Column Lists ..................................................................................... 845 31.5. Conflicts ........................................................................................... 847 vii
  • 8. PostgreSQL 15.1 Documentation 31.6. Restrictions ....................................................................................... 848 31.7. Architecture ...................................................................................... 849 31.8. Monitoring ........................................................................................ 850 31.9. Security ............................................................................................ 850 31.10. Configuration Settings ....................................................................... 850 31.11. Quick Setup ..................................................................................... 851 32. Just-in-Time Compilation (JIT) ....................................................................... 852 32.1. What Is JIT compilation? .................................................................... 852 32.2. When to JIT? .................................................................................... 852 32.3. Configuration .................................................................................... 854 32.4. Extensibility ...................................................................................... 854 33. Regression Tests ........................................................................................... 855 33.1. Running the Tests .............................................................................. 855 33.2. Test Evaluation .................................................................................. 859 33.3. Variant Comparison Files .................................................................... 861 33.4. TAP Tests ......................................................................................... 862 33.5. Test Coverage Examination ................................................................. 862 IV. Client Interfaces ................................................................................................... 864 34. libpq — C Library ........................................................................................ 869 34.1. Database Connection Control Functions ................................................. 869 34.2. Connection Status Functions ................................................................ 885 34.3. Command Execution Functions ............................................................. 891 34.4. Asynchronous Command Processing ...................................................... 907 34.5. Pipeline Mode ................................................................................... 911 34.6. Retrieving Query Results Row-by-Row .................................................. 915 34.7. Canceling Queries in Progress .............................................................. 916 34.8. The Fast-Path Interface ....................................................................... 917 34.9. Asynchronous Notification ................................................................... 918 34.10. Functions Associated with the COPY Command ..................................... 919 34.11. Control Functions ............................................................................. 923 34.12. Miscellaneous Functions .................................................................... 925 34.13. Notice Processing ............................................................................. 929 34.14. Event System ................................................................................... 930 34.15. Environment Variables ...................................................................... 936 34.16. The Password File ............................................................................ 938 34.17. The Connection Service File ............................................................... 938 34.18. LDAP Lookup of Connection Parameters .............................................. 939 34.19. SSL Support .................................................................................... 940 34.20. Behavior in Threaded Programs .......................................................... 944 34.21. Building libpq Programs .................................................................... 945 34.22. Example Programs ............................................................................ 946 35. Large Objects .............................................................................................. 958 35.1. Introduction ....................................................................................... 958 35.2. Implementation Features ...................................................................... 958 35.3. Client Interfaces ................................................................................. 958 35.4. Server-Side Functions ......................................................................... 963 35.5. Example Program ............................................................................... 964 36. ECPG — Embedded SQL in C ....................................................................... 970 36.1. The Concept ...................................................................................... 970 36.2. Managing Database Connections ........................................................... 970 36.3. Running SQL Commands .................................................................... 974 36.4. Using Host Variables .......................................................................... 977 36.5. Dynamic SQL ................................................................................... 991 36.6. pgtypes Library .................................................................................. 993 36.7. Using Descriptor Areas ..................................................................... 1007 36.8. Error Handling ................................................................................. 1020 36.9. Preprocessor Directives ..................................................................... 1027 36.10. Processing Embedded SQL Programs ................................................. 1029 viii
  • 9. PostgreSQL 15.1 Documentation 36.11. Library Functions ............................................................................ 1030 36.12. Large Objects ................................................................................. 1031 36.13. C++ Applications ............................................................................ 1032 36.14. Embedded SQL Commands .............................................................. 1036 36.15. Informix Compatibility Mode ............................................................ 1061 36.16. Oracle Compatibility Mode ............................................................... 1076 36.17. Internals ........................................................................................ 1076 37. The Information Schema .............................................................................. 1079 37.1. The Schema ..................................................................................... 1079 37.2. Data Types ...................................................................................... 1079 37.3. information_schema_catalog_name ........................................ 1080 37.4. administrable_role_authorizations .................................... 1080 37.5. applicable_roles ..................................................................... 1080 37.6. attributes ................................................................................. 1081 37.7. character_sets ......................................................................... 1083 37.8. check_constraint_routine_usage .......................................... 1084 37.9. check_constraints ................................................................... 1084 37.10. collations ................................................................................ 1085 37.11. collation_character_set_applicability .......................... 1085 37.12. column_column_usage .............................................................. 1086 37.13. column_domain_usage .............................................................. 1086 37.14. column_options ........................................................................ 1086 37.15. column_privileges .................................................................. 1087 37.16. column_udt_usage .................................................................... 1088 37.17. columns ...................................................................................... 1088 37.18. constraint_column_usage ...................................................... 1091 37.19. constraint_table_usage ........................................................ 1092 37.20. data_type_privileges ............................................................ 1092 37.21. domain_constraints ................................................................ 1093 37.22. domain_udt_usage .................................................................... 1093 37.23. domains ...................................................................................... 1094 37.24. element_types .......................................................................... 1096 37.25. enabled_roles .......................................................................... 1098 37.26. foreign_data_wrapper_options ............................................ 1098 37.27. foreign_data_wrappers .......................................................... 1099 37.28. foreign_server_options ........................................................ 1099 37.29. foreign_servers ...................................................................... 1099 37.30. foreign_table_options .......................................................... 1100 37.31. foreign_tables ........................................................................ 1100 37.32. key_column_usage .................................................................... 1101 37.33. parameters ................................................................................ 1101 37.34. referential_constraints ...................................................... 1103 37.35. role_column_grants ................................................................ 1104 37.36. role_routine_grants .............................................................. 1104 37.37. role_table_grants .................................................................. 1105 37.38. role_udt_grants ...................................................................... 1106 37.39. role_usage_grants .................................................................. 1106 37.40. routine_column_usage ............................................................ 1107 37.41. routine_privileges ................................................................ 1107 37.42. routine_routine_usage .......................................................... 1108 37.43. routine_sequence_usage ........................................................ 1109 37.44. routine_table_usage .............................................................. 1109 37.45. routines .................................................................................... 1110 37.46. schemata .................................................................................... 1114 37.47. sequences .................................................................................. 1114 37.48. sql_features ............................................................................ 1115 37.49. sql_implementation_info ...................................................... 1116 37.50. sql_parts .................................................................................. 1116 ix
  • 10. PostgreSQL 15.1 Documentation 37.51. sql_sizing ................................................................................ 1117 37.52. table_constraints .................................................................. 1117 37.53. table_privileges .................................................................... 1118 37.54. tables ........................................................................................ 1118 37.55. transforms ................................................................................ 1119 37.56. triggered_update_columns .................................................... 1120 37.57. triggers .................................................................................... 1120 37.58. udt_privileges ........................................................................ 1122 37.59. usage_privileges .................................................................... 1122 37.60. user_defined_types ................................................................ 1123 37.61. user_mapping_options ............................................................ 1125 37.62. user_mappings .......................................................................... 1125 37.63. view_column_usage .................................................................. 1125 37.64. view_routine_usage ................................................................ 1126 37.65. view_table_usage .................................................................... 1126 37.66. views .......................................................................................... 1127 V. Server Programming ............................................................................................. 1129 38. Extending SQL ........................................................................................... 1135 38.1. How Extensibility Works ................................................................... 1135 38.2. The PostgreSQL Type System ............................................................ 1135 38.3. User-Defined Functions ..................................................................... 1138 38.4. User-Defined Procedures ................................................................... 1139 38.5. Query Language (SQL) Functions ....................................................... 1139 38.6. Function Overloading ........................................................................ 1156 38.7. Function Volatility Categories ............................................................. 1157 38.8. Procedural Language Functions ........................................................... 1158 38.9. Internal Functions ............................................................................. 1158 38.10. C-Language Functions ..................................................................... 1159 38.11. Function Optimization Information .................................................... 1180 38.12. User-Defined Aggregates ................................................................. 1181 38.13. User-Defined Types ........................................................................ 1188 38.14. User-Defined Operators ................................................................... 1192 38.15. Operator Optimization Information .................................................... 1193 38.16. Interfacing Extensions to Indexes ....................................................... 1197 38.17. Packaging Related Objects into an Extension ....................................... 1210 38.18. Extension Building Infrastructure ....................................................... 1218 39. Triggers ..................................................................................................... 1223 39.1. Overview of Trigger Behavior ............................................................ 1223 39.2. Visibility of Data Changes ................................................................. 1226 39.3. Writing Trigger Functions in C ........................................................... 1226 39.4. A Complete Trigger Example ............................................................. 1229 40. Event Triggers ............................................................................................ 1233 40.1. Overview of Event Trigger Behavior .................................................... 1233 40.2. Event Trigger Firing Matrix ............................................................... 1234 40.3. Writing Event Trigger Functions in C .................................................. 1237 40.4. A Complete Event Trigger Example .................................................... 1238 40.5. A Table Rewrite Event Trigger Example .............................................. 1239 41. The Rule System ........................................................................................ 1241 41.1. The Query Tree ................................................................................ 1241 41.2. Views and the Rule System ................................................................ 1242 41.3. Materialized Views ........................................................................... 1249 41.4. Rules on INSERT, UPDATE, and DELETE ........................................... 1252 41.5. Rules and Privileges .......................................................................... 1263 41.6. Rules and Command Status ................................................................ 1265 41.7. Rules Versus Triggers ....................................................................... 1265 42. Procedural Languages .................................................................................. 1268 42.1. Installing Procedural Languages .......................................................... 1268 43. PL/pgSQL — SQL Procedural Language ........................................................ 1271 x
  • 11. PostgreSQL 15.1 Documentation 43.1. Overview ........................................................................................ 1271 43.2. Structure of PL/pgSQL ...................................................................... 1272 43.3. Declarations ..................................................................................... 1274 43.4. Expressions ..................................................................................... 1280 43.5. Basic Statements .............................................................................. 1281 43.6. Control Structures ............................................................................. 1289 43.7. Cursors ........................................................................................... 1304 43.8. Transaction Management ................................................................... 1310 43.9. Errors and Messages ......................................................................... 1311 43.10. Trigger Functions ............................................................................ 1313 43.11. PL/pgSQL under the Hood ............................................................... 1322 43.12. Tips for Developing in PL/pgSQL ..................................................... 1325 43.13. Porting from Oracle PL/SQL ............................................................ 1329 44. PL/Tcl — Tcl Procedural Language ............................................................... 1339 44.1. Overview ........................................................................................ 1339 44.2. PL/Tcl Functions and Arguments ........................................................ 1339 44.3. Data Values in PL/Tcl ....................................................................... 1341 44.4. Global Data in PL/Tcl ....................................................................... 1341 44.5. Database Access from PL/Tcl ............................................................. 1342 44.6. Trigger Functions in PL/Tcl ............................................................... 1344 44.7. Event Trigger Functions in PL/Tcl ....................................................... 1346 44.8. Error Handling in PL/Tcl ................................................................... 1346 44.9. Explicit Subtransactions in PL/Tcl ....................................................... 1347 44.10. Transaction Management .................................................................. 1348 44.11. PL/Tcl Configuration ....................................................................... 1349 44.12. Tcl Procedure Names ...................................................................... 1349 45. PL/Perl — Perl Procedural Language ............................................................. 1350 45.1. PL/Perl Functions and Arguments ....................................................... 1350 45.2. Data Values in PL/Perl ...................................................................... 1355 45.3. Built-in Functions ............................................................................. 1355 45.4. Global Values in PL/Perl ................................................................... 1360 45.5. Trusted and Untrusted PL/Perl ............................................................ 1361 45.6. PL/Perl Triggers ............................................................................... 1362 45.7. PL/Perl Event Triggers ...................................................................... 1363 45.8. PL/Perl Under the Hood .................................................................... 1364 46. PL/Python — Python Procedural Language ..................................................... 1366 46.1. PL/Python Functions ......................................................................... 1366 46.2. Data Values ..................................................................................... 1367 46.3. Sharing Data .................................................................................... 1372 46.4. Anonymous Code Blocks ................................................................... 1373 46.5. Trigger Functions ............................................................................. 1373 46.6. Database Access ............................................................................... 1374 46.7. Explicit Subtransactions ..................................................................... 1377 46.8. Transaction Management ................................................................... 1378 46.9. Utility Functions .............................................................................. 1379 46.10. Python 2 vs. Python 3 ..................................................................... 1380 46.11. Environment Variables ..................................................................... 1380 47. Server Programming Interface ....................................................................... 1382 47.1. Interface Functions ........................................................................... 1382 47.2. Interface Support Functions ................................................................ 1424 47.3. Memory Management ....................................................................... 1433 47.4. Transaction Management ................................................................... 1443 47.5. Visibility of Data Changes ................................................................. 1446 47.6. Examples ........................................................................................ 1446 48. Background Worker Processes ...................................................................... 1450 49. Logical Decoding ........................................................................................ 1453 49.1. Logical Decoding Examples ............................................................... 1453 49.2. Logical Decoding Concepts ................................................................ 1457 xi
  • 12. PostgreSQL 15.1 Documentation 49.3. Streaming Replication Protocol Interface .............................................. 1458 49.4. Logical Decoding SQL Interface ......................................................... 1458 49.5. System Catalogs Related to Logical Decoding ....................................... 1458 49.6. Logical Decoding Output Plugins ........................................................ 1459 49.7. Logical Decoding Output Writers ........................................................ 1467 49.8. Synchronous Replication Support for Logical Decoding ........................... 1467 49.9. Streaming of Large Transactions for Logical Decoding ............................ 1467 49.10. Two-phase Commit Support for Logical Decoding ................................ 1469 50. Replication Progress Tracking ....................................................................... 1470 51. Archive Modules ........................................................................................ 1471 51.1. Initialization Functions ...................................................................... 1471 51.2. Archive Module Callbacks ................................................................. 1471 VI. Reference .......................................................................................................... 1473 I. SQL Commands ............................................................................................ 1478 ABORT .................................................................................................. 1482 ALTER AGGREGATE ............................................................................. 1483 ALTER COLLATION .............................................................................. 1485 ALTER CONVERSION ............................................................................ 1488 ALTER DATABASE ................................................................................ 1490 ALTER DEFAULT PRIVILEGES .............................................................. 1493 ALTER DOMAIN .................................................................................... 1496 ALTER EVENT TRIGGER ....................................................................... 1500 ALTER EXTENSION ............................................................................... 1501 ALTER FOREIGN DATA WRAPPER ........................................................ 1505 ALTER FOREIGN TABLE ....................................................................... 1507 ALTER FUNCTION ................................................................................. 1512 ALTER GROUP ...................................................................................... 1516 ALTER INDEX ....................................................................................... 1518 ALTER LANGUAGE ............................................................................... 1521 ALTER LARGE OBJECT ......................................................................... 1522 ALTER MATERIALIZED VIEW ............................................................... 1523 ALTER OPERATOR ................................................................................ 1525 ALTER OPERATOR CLASS .................................................................... 1527 ALTER OPERATOR FAMILY .................................................................. 1528 ALTER POLICY ..................................................................................... 1532 ALTER PROCEDURE .............................................................................. 1534 ALTER PUBLICATION ........................................................................... 1537 ALTER ROLE ......................................................................................... 1540 ALTER ROUTINE ................................................................................... 1544 ALTER RULE ......................................................................................... 1546 ALTER SCHEMA ................................................................................... 1547 ALTER SEQUENCE ................................................................................ 1548 ALTER SERVER ..................................................................................... 1551 ALTER STATISTICS ............................................................................... 1553 ALTER SUBSCRIPTION .......................................................................... 1554 ALTER SYSTEM .................................................................................... 1557 ALTER TABLE ....................................................................................... 1559 ALTER TABLESPACE ............................................................................ 1577 ALTER TEXT SEARCH CONFIGURATION .............................................. 1579 ALTER TEXT SEARCH DICTIONARY ..................................................... 1581 ALTER TEXT SEARCH PARSER ............................................................. 1583 ALTER TEXT SEARCH TEMPLATE ........................................................ 1584 ALTER TRIGGER ................................................................................... 1585 ALTER TYPE ......................................................................................... 1587 ALTER USER ......................................................................................... 1592 ALTER USER MAPPING ......................................................................... 1593 ALTER VIEW ......................................................................................... 1594 ANALYZE .............................................................................................. 1596 xii
  • 13. PostgreSQL 15.1 Documentation BEGIN ................................................................................................... 1599 CALL ..................................................................................................... 1601 CHECKPOINT ........................................................................................ 1603 CLOSE ................................................................................................... 1604 CLUSTER .............................................................................................. 1605 COMMENT ............................................................................................ 1608 COMMIT ................................................................................................ 1613 COMMIT PREPARED ............................................................................. 1614 COPY .................................................................................................... 1615 CREATE ACCESS METHOD ................................................................... 1625 CREATE AGGREGATE ........................................................................... 1626 CREATE CAST ....................................................................................... 1634 CREATE COLLATION ............................................................................ 1638 CREATE CONVERSION .......................................................................... 1641 CREATE DATABASE ............................................................................. 1643 CREATE DOMAIN ................................................................................. 1647 CREATE EVENT TRIGGER ..................................................................... 1650 CREATE EXTENSION ............................................................................ 1652 CREATE FOREIGN DATA WRAPPER ...................................................... 1655 CREATE FOREIGN TABLE ..................................................................... 1657 CREATE FUNCTION .............................................................................. 1662 CREATE GROUP .................................................................................... 1671 CREATE INDEX ..................................................................................... 1672 CREATE LANGUAGE ............................................................................. 1681 CREATE MATERIALIZED VIEW ............................................................. 1684 CREATE OPERATOR .............................................................................. 1686 CREATE OPERATOR CLASS .................................................................. 1689 CREATE OPERATOR FAMILY ................................................................ 1692 CREATE POLICY ................................................................................... 1693 CREATE PROCEDURE ........................................................................... 1699 CREATE PUBLICATION ......................................................................... 1703 CREATE ROLE ...................................................................................... 1707 CREATE RULE ...................................................................................... 1712 CREATE SCHEMA ................................................................................. 1715 CREATE SEQUENCE .............................................................................. 1718 CREATE SERVER .................................................................................. 1722 CREATE STATISTICS ............................................................................. 1724 CREATE SUBSCRIPTION ....................................................................... 1728 CREATE TABLE .................................................................................... 1732 CREATE TABLE AS ............................................................................... 1754 CREATE TABLESPACE .......................................................................... 1757 CREATE TEXT SEARCH CONFIGURATION ............................................ 1759 CREATE TEXT SEARCH DICTIONARY ................................................... 1760 CREATE TEXT SEARCH PARSER ........................................................... 1762 CREATE TEXT SEARCH TEMPLATE ...................................................... 1764 CREATE TRANSFORM ........................................................................... 1765 CREATE TRIGGER ................................................................................. 1767 CREATE TYPE ....................................................................................... 1774 CREATE USER ....................................................................................... 1783 CREATE USER MAPPING ....................................................................... 1784 CREATE VIEW ...................................................................................... 1786 DEALLOCATE ....................................................................................... 1792 DECLARE .............................................................................................. 1793 DELETE ................................................................................................. 1797 DISCARD ............................................................................................... 1800 DO ........................................................................................................ 1801 DROP ACCESS METHOD ....................................................................... 1803 DROP AGGREGATE ............................................................................... 1804 xiii
  • 14. PostgreSQL 15.1 Documentation DROP CAST ........................................................................................... 1806 DROP COLLATION ................................................................................ 1807 DROP CONVERSION .............................................................................. 1808 DROP DATABASE ................................................................................. 1809 DROP DOMAIN ...................................................................................... 1810 DROP EVENT TRIGGER ......................................................................... 1811 DROP EXTENSION ................................................................................. 1812 DROP FOREIGN DATA WRAPPER .......................................................... 1813 DROP FOREIGN TABLE ......................................................................... 1814 DROP FUNCTION .................................................................................. 1815 DROP GROUP ........................................................................................ 1817 DROP INDEX ......................................................................................... 1818 DROP LANGUAGE ................................................................................. 1820 DROP MATERIALIZED VIEW ................................................................. 1821 DROP OPERATOR .................................................................................. 1822 DROP OPERATOR CLASS ...................................................................... 1824 DROP OPERATOR FAMILY .................................................................... 1826 DROP OWNED ....................................................................................... 1828 DROP POLICY ....................................................................................... 1829 DROP PROCEDURE ............................................................................... 1830 DROP PUBLICATION ............................................................................. 1832 DROP ROLE .......................................................................................... 1833 DROP ROUTINE ..................................................................................... 1834 DROP RULE .......................................................................................... 1836 DROP SCHEMA ..................................................................................... 1837 DROP SEQUENCE .................................................................................. 1838 DROP SERVER ...................................................................................... 1839 DROP STATISTICS ................................................................................. 1840 DROP SUBSCRIPTION ............................................................................ 1841 DROP TABLE ........................................................................................ 1843 DROP TABLESPACE .............................................................................. 1844 DROP TEXT SEARCH CONFIGURATION ................................................ 1845 DROP TEXT SEARCH DICTIONARY ....................................................... 1846 DROP TEXT SEARCH PARSER ............................................................... 1847 DROP TEXT SEARCH TEMPLATE .......................................................... 1848 DROP TRANSFORM ............................................................................... 1849 DROP TRIGGER ..................................................................................... 1850 DROP TYPE ........................................................................................... 1851 DROP USER ........................................................................................... 1852 DROP USER MAPPING ........................................................................... 1853 DROP VIEW .......................................................................................... 1854 END ...................................................................................................... 1855 EXECUTE .............................................................................................. 1856 EXPLAIN ............................................................................................... 1857 FETCH ................................................................................................... 1862 GRANT .................................................................................................. 1866 IMPORT FOREIGN SCHEMA .................................................................. 1871 INSERT .................................................................................................. 1873 LISTEN .................................................................................................. 1881 LOAD .................................................................................................... 1883 LOCK .................................................................................................... 1884 MERGE .................................................................................................. 1887 MOVE ................................................................................................... 1893 NOTIFY ................................................................................................. 1895 PREPARE ............................................................................................... 1898 PREPARE TRANSACTION ...................................................................... 1901 REASSIGN OWNED ............................................................................... 1903 REFRESH MATERIALIZED VIEW ........................................................... 1904 xiv
  • 15. PostgreSQL 15.1 Documentation REINDEX ............................................................................................... 1906 RELEASE SAVEPOINT ........................................................................... 1911 RESET ................................................................................................... 1913 REVOKE ................................................................................................ 1914 ROLLBACK ........................................................................................... 1918 ROLLBACK PREPARED ......................................................................... 1919 ROLLBACK TO SAVEPOINT .................................................................. 1920 SAVEPOINT ........................................................................................... 1922 SECURITY LABEL ................................................................................. 1924 SELECT ................................................................................................. 1927 SELECT INTO ........................................................................................ 1949 SET ....................................................................................................... 1951 SET CONSTRAINTS ............................................................................... 1954 SET ROLE ............................................................................................. 1955 SET SESSION AUTHORIZATION ............................................................ 1957 SET TRANSACTION ............................................................................... 1959 SHOW ................................................................................................... 1962 START TRANSACTION .......................................................................... 1964 TRUNCATE ........................................................................................... 1965 UNLISTEN ............................................................................................. 1967 UPDATE ................................................................................................ 1969 VACUUM .............................................................................................. 1974 VALUES ................................................................................................ 1978 II. PostgreSQL Client Applications ..................................................................... 1981 clusterdb ................................................................................................. 1982 createdb .................................................................................................. 1985 createuser ................................................................................................ 1989 dropdb .................................................................................................... 1993 dropuser .................................................................................................. 1996 ecpg ....................................................................................................... 1999 pg_amcheck ............................................................................................ 2002 pg_basebackup ......................................................................................... 2008 pgbench .................................................................................................. 2017 pg_config ................................................................................................ 2041 pg_dump ................................................................................................. 2044 pg_dumpall ............................................................................................. 2057 pg_isready ............................................................................................... 2064 pg_receivewal .......................................................................................... 2066 pg_recvlogical ......................................................................................... 2071 pg_restore ............................................................................................... 2075 pg_verifybackup ....................................................................................... 2084 psql ........................................................................................................ 2087 reindexdb ................................................................................................ 2130 vacuumdb ............................................................................................... 2134 III. PostgreSQL Server Applications .................................................................... 2140 initdb ..................................................................................................... 2141 pg_archivecleanup .................................................................................... 2146 pg_checksums .......................................................................................... 2148 pg_controldata ......................................................................................... 2150 pg_ctl ..................................................................................................... 2151 pg_resetwal ............................................................................................. 2157 pg_rewind ............................................................................................... 2161 pg_test_fsync ........................................................................................... 2165 pg_test_timing ......................................................................................... 2166 pg_upgrade .............................................................................................. 2170 pg_waldump ............................................................................................ 2179 postgres .................................................................................................. 2182 postmaster ............................................................................................... 2189 xv
  • 16. PostgreSQL 15.1 Documentation VII. Internals ........................................................................................................... 2190 52. Overview of PostgreSQL Internals ................................................................. 2196 52.1. The Path of a Query ......................................................................... 2196 52.2. How Connections Are Established ....................................................... 2196 52.3. The Parser Stage .............................................................................. 2197 52.4. The PostgreSQL Rule System ............................................................. 2198 52.5. Planner/Optimizer ............................................................................. 2198 52.6. Executor ......................................................................................... 2199 53. System Catalogs ......................................................................................... 2201 53.1. Overview ........................................................................................ 2201 53.2. pg_aggregate ............................................................................. 2203 53.3. pg_am ........................................................................................... 2204 53.4. pg_amop ....................................................................................... 2205 53.5. pg_amproc ................................................................................... 2206 53.6. pg_attrdef ................................................................................. 2206 53.7. pg_attribute ............................................................................. 2207 53.8. pg_authid ................................................................................... 2209 53.9. pg_auth_members ....................................................................... 2210 53.10. pg_cast ...................................................................................... 2210 53.11. pg_class .................................................................................... 2211 53.12. pg_collation ............................................................................ 2213 53.13. pg_constraint .......................................................................... 2214 53.14. pg_conversion .......................................................................... 2216 53.15. pg_database .............................................................................. 2217 53.16. pg_db_role_setting ................................................................ 2218 53.17. pg_default_acl ........................................................................ 2218 53.18. pg_depend .................................................................................. 2219 53.19. pg_description ........................................................................ 2221 53.20. pg_enum ...................................................................................... 2221 53.21. pg_event_trigger .................................................................... 2222 53.22. pg_extension ............................................................................ 2222 53.23. pg_foreign_data_wrapper ...................................................... 2223 53.24. pg_foreign_server .................................................................. 2223 53.25. pg_foreign_table .................................................................... 2224 53.26. pg_index .................................................................................... 2224 53.27. pg_inherits .............................................................................. 2226 53.28. pg_init_privs .......................................................................... 2226 53.29. pg_language .............................................................................. 2227 53.30. pg_largeobject ........................................................................ 2228 53.31. pg_largeobject_metadata ...................................................... 2228 53.32. pg_namespace ............................................................................ 2228 53.33. pg_opclass ................................................................................ 2229 53.34. pg_operator .............................................................................. 2229 53.35. pg_opfamily .............................................................................. 2230 53.36. pg_parameter_acl .................................................................... 2231 53.37. pg_partitioned_table ............................................................ 2231 53.38. pg_policy .................................................................................. 2232 53.39. pg_proc ...................................................................................... 2233 53.40. pg_publication ........................................................................ 2235 53.41. pg_publication_namespace .................................................... 2236 53.42. pg_publication_rel ................................................................ 2236 53.43. pg_range .................................................................................... 2236 53.44. pg_replication_origin .......................................................... 2237 53.45. pg_rewrite ................................................................................ 2237 53.46. pg_seclabel .............................................................................. 2238 53.47. pg_sequence .............................................................................. 2238 53.48. pg_shdepend .............................................................................. 2239 53.49. pg_shdescription .................................................................... 2240 xvi
  • 17. PostgreSQL 15.1 Documentation 53.50. pg_shseclabel .......................................................................... 2240 53.51. pg_statistic ............................................................................ 2241 53.52. pg_statistic_ext .................................................................... 2242 53.53. pg_statistic_ext_data .......................................................... 2243 53.54. pg_subscription ...................................................................... 2244 53.55. pg_subscription_rel .............................................................. 2245 53.56. pg_tablespace .......................................................................... 2245 53.57. pg_transform ............................................................................ 2246 53.58. pg_trigger ................................................................................ 2246 53.59. pg_ts_config ............................................................................ 2248 53.60. pg_ts_config_map .................................................................... 2248 53.61. pg_ts_dict ................................................................................ 2248 53.62. pg_ts_parser ............................................................................ 2249 53.63. pg_ts_template ........................................................................ 2249 53.64. pg_type ...................................................................................... 2250 53.65. pg_user_mapping ...................................................................... 2253 54. System Views ............................................................................................ 2254 54.1. Overview ........................................................................................ 2254 54.2. pg_available_extensions ........................................................ 2255 54.3. pg_available_extension_versions ........................................ 2255 54.4. pg_backend_memory_contexts .................................................. 2256 54.5. pg_config ................................................................................... 2257 54.6. pg_cursors ................................................................................. 2257 54.7. pg_file_settings ..................................................................... 2258 54.8. pg_group ..................................................................................... 2259 54.9. pg_hba_file_rules ................................................................... 2259 54.10. pg_ident_file_mappings ........................................................ 2260 54.11. pg_indexes ................................................................................ 2260 54.12. pg_locks .................................................................................... 2261 54.13. pg_matviews .............................................................................. 2263 54.14. pg_policies .............................................................................. 2264 54.15. pg_prepared_statements ........................................................ 2264 54.16. pg_prepared_xacts .................................................................. 2265 54.17. pg_publication_tables .......................................................... 2266 54.18. pg_replication_origin_status ............................................ 2266 54.19. pg_replication_slots ............................................................ 2267 54.20. pg_roles .................................................................................... 2268 54.21. pg_rules .................................................................................... 2269 54.22. pg_seclabels ............................................................................ 2269 54.23. pg_sequences ............................................................................ 2270 54.24. pg_settings .............................................................................. 2270 54.25. pg_shadow .................................................................................. 2272 54.26. pg_shmem_allocations ............................................................ 2273 54.27. pg_stats .................................................................................... 2274 54.28. pg_stats_ext ............................................................................ 2275 54.29. pg_stats_ext_exprs ................................................................ 2276 54.30. pg_tables .................................................................................. 2278 54.31. pg_timezone_abbrevs .............................................................. 2278 54.32. pg_timezone_names .................................................................. 2279 54.33. pg_user ...................................................................................... 2279 54.34. pg_user_mappings .................................................................... 2280 54.35. pg_views .................................................................................... 2280 55. Frontend/Backend Protocol ........................................................................... 2282 55.1. Overview ........................................................................................ 2282 55.2. Message Flow .................................................................................. 2283 55.3. SASL Authentication ........................................................................ 2297 55.4. Streaming Replication Protocol ........................................................... 2299 55.5. Logical Streaming Replication Protocol ................................................ 2308 xvii
  • 18. PostgreSQL 15.1 Documentation 55.6. Message Data Types ......................................................................... 2309 55.7. Message Formats .............................................................................. 2309 55.8. Error and Notice Message Fields ......................................................... 2326 55.9. Logical Replication Message Formats .................................................. 2328 55.10. Summary of Changes since Protocol 2.0 ............................................. 2337 56. PostgreSQL Coding Conventions ................................................................... 2339 56.1. Formatting ....................................................................................... 2339 56.2. Reporting Errors Within the Server ...................................................... 2339 56.3. Error Message Style Guide ................................................................. 2343 56.4. Miscellaneous Coding Conventions ...................................................... 2347 57. Native Language Support ............................................................................. 2349 57.1. For the Translator ............................................................................. 2349 57.2. For the Programmer .......................................................................... 2351 58. Writing a Procedural Language Handler .......................................................... 2355 59. Writing a Foreign Data Wrapper .................................................................... 2357 59.1. Foreign Data Wrapper Functions ......................................................... 2357 59.2. Foreign Data Wrapper Callback Routines .............................................. 2357 59.3. Foreign Data Wrapper Helper Functions ............................................... 2373 59.4. Foreign Data Wrapper Query Planning ................................................. 2374 59.5. Row Locking in Foreign Data Wrappers ............................................... 2376 60. Writing a Table Sampling Method ................................................................. 2378 60.1. Sampling Method Support Functions .................................................... 2378 61. Writing a Custom Scan Provider .................................................................... 2381 61.1. Creating Custom Scan Paths ............................................................... 2381 61.2. Creating Custom Scan Plans ............................................................... 2382 61.3. Executing Custom Scans .................................................................... 2383 62. Genetic Query Optimizer .............................................................................. 2386 62.1. Query Handling as a Complex Optimization Problem .............................. 2386 62.2. Genetic Algorithms ........................................................................... 2386 62.3. Genetic Query Optimization (GEQO) in PostgreSQL .............................. 2387 62.4. Further Reading ............................................................................... 2389 63. Table Access Method Interface Definition ....................................................... 2390 64. Index Access Method Interface Definition ....................................................... 2391 64.1. Basic API Structure for Indexes .......................................................... 2391 64.2. Index Access Method Functions .......................................................... 2394 64.3. Index Scanning ................................................................................ 2399 64.4. Index Locking Considerations ............................................................. 2401 64.5. Index Uniqueness Checks .................................................................. 2402 64.6. Index Cost Estimation Functions ......................................................... 2403 65. Generic WAL Records ................................................................................. 2406 66. Custom WAL Resource Managers ................................................................. 2408 67. B-Tree Indexes ........................................................................................... 2410 67.1. Introduction ..................................................................................... 2410 67.2. Behavior of B-Tree Operator Classes ................................................... 2410 67.3. B-Tree Support Functions .................................................................. 2411 67.4. Implementation ................................................................................ 2414 68. GiST Indexes ............................................................................................. 2417 68.1. Introduction ..................................................................................... 2417 68.2. Built-in Operator Classes ................................................................... 2417 68.3. Extensibility .................................................................................... 2420 68.4. Implementation ................................................................................ 2433 68.5. Examples ........................................................................................ 2433 69. SP-GiST Indexes ........................................................................................ 2435 69.1. Introduction ..................................................................................... 2435 69.2. Built-in Operator Classes ................................................................... 2435 69.3. Extensibility .................................................................................... 2437 69.4. Implementation ................................................................................ 2446 69.5. Examples ........................................................................................ 2447 xviii