Skip to main content

Documentation

Preface

1. What IsPostgreSQL?

2. A Brief History of PostgreSQL

3. Conventions

4. Further Information

5. Bug Reporting Guidelines

I. Tutorial

1. Getting Started

2. The SQL Language

3. Advanced Features

II. The SQL Language

4. SQL Syntax

5. Data Definition

6. Data Manipulation

7. Queries

8. Data Types

9. Functions and Operators

PREPARE TRANSACTION - prepare the current transaction for two-phase commit

https://www.highgo.ca/2020/01/28/understanding-prepared-transactions-and-handling-the-orphans

10. Type Conversion

11. Indexes

12. Full Text Search

13. Concurrency Control

13.1. Introduction

13.2. Transaction Isolation

13.2.1. Read Committed Isolation Level

13.2.2. Repeatable Read Isolation Level

13.2.3. Serializable Isolation Level

13.3. Explicit Locking

13.3.1. Table-Level Locks

13.3.2. Row-Level Locks

13.3.3. Page-Level Locks

13.3.4. Deadlocks

13.3.5. Advisory Locks

https://www.postgresql.org/docs/current/explicit-locking.html

Postgres Lock Conflicts

All Postgres Locks Explained | A Deep Dive - YouTube

13.4. Data Consistency Checks at the Application Level

13.4.1. Enforcing Consistency with Serializable Transactions

13.4.2. Enforcing Consistency with Explicit Blocking Locks

13.5. Caveats

13.6. Locking and Indexes

14. Performance Tips

15. Parallel Query

III. Server Administration

16. Installation from Source Code

17. Installation from Source Code onWindows

18. Server Setup and Operation

19. Server Configuration

20. Client Authentication

21. Database Roles

22. Managing Databases

23. Localization

24. Routine Database Maintenance Tasks

25. Backup and Restore

27. Monitoring Database Activity

28. Monitoring Disk Usage

29. Reliability and the Write-Ahead Log

31. Just-in-Time Compilation (JIT)

32. Regression Tests

IV. Client Interfaces

33.libpq- C Library

34. Large Objects

35.ECPG- EmbeddedSQLin C

36. The Information Schema

V. Server Programming

37. ExtendingSQL

38. Triggers

A trigger is a specification that the database should automatically execute a particular function whenever a certain type of operation is performed. Triggers can be defined to execute either before or after any INSERT, UPDATE, or DELETE operation, either once per modified row, or once per SQL statement. If a trigger event occurs, the trigger's function is called at the appropriate time to handle the event.

PostgreSQL offers both per-row triggers and per-statement triggers. With a per-row trigger, the trigger function is invoked once for each row that is affected by the statement that fired the trigger. In contrast, a per-statement trigger is invoked only once when an appropriate statement is executed, regardless of the number of rows affected by that statement. In particular, a statement that affects zero rows will still result in the execution of any applicable per-statement triggers. These two types of triggers are sometimes called row-level triggers and statement-level triggers, respectively.

39. Event Triggers

40. The Rule System

41. Procedural Languages

42.PL/pgSQL-SQLProcedural Language

43. PL/Tcl - Tcl Procedural Language

44. PL/Perl - Perl Procedural Language

45. PL/Python - Python Procedural Language

46. Server Programming Interface

47. Background Worker Processes

48. Logical Decoding

VI. Reference

I. SQL Commands

II. PostgreSQL Client Applications

III. PostgreSQL Server Applications

VII. Internals

50. Overview of PostgreSQL Internals

51. System Catalogs

52. Frontend/Backend Protocol

53. PostgreSQL Coding Conventions

54. Native Language Support

55. Writing a Procedural Language Handler

56. Writing a Foreign Data Wrapper

57. Writing a Table Sampling Method

58. Writing a Custom Scan Provider

59. Genetic Query Optimizer

60. Table Access Method Interface Definition

61. Index Access Method Interface Definition

62. Generic WAL Records

63. B-Tree Indexes

64. GiST Indexes

65. SP-GiST Indexes

66. GIN Indexes

67. BRIN Indexes

68. Database Physical Storage

69. System Catalog Declarations and Initial Contents

70. How the Planner Uses Statistics

VIII. Appendixes

A.PostgreSQLError Codes

B. Date/Time Support

C.SQLKey Words

D. SQL Conformance

E. Release Notes

F. Additional Supplied Modules

G. Additional Supplied Programs

H. External Projects

I. The Source Code Repository

J. Documentation

K.PostgreSQLLimits

L. Acronyms

https://www.postgresql.org/docs/current/index.html