Extend PostgreSQL using PostgreSQL server programming to create, test, debug, and optimize a range of user-defined functions in your favorite programming language
- Learn the concepts of PostgreSQL 11 with lots of real-world datasets and examples
- Learn queries, data replication, and database performance
- Extend the functionalities of your PostgreSQL instance to suit your organizational needs
PostgreSQL is a rock-solid, scalable, and safe enterprise-level relational database. With a broad range of features and stability, it is ever increasing in popularity.This book shows you how to take advantage of PostgreSQL 11 features for server-side programming. Server-side programming enables strong data encapsulation and coherence.
The book begins with the importance of server-side programming and explains the risks of leaving all the checks outside the database. To build your capabilities further, you will learn how to write stored procedures, both functions and the new PostgreSQL 11 procedures, and create triggers to perform encapsulation and maintain data consistency.
You will also learn how to produce extensions, the easiest way to package your programs for easy and solid deployment on different PostgreSQL installations.
What you will learn
- Explore data encapsulation
- Write stored procedures in different languages
- Interact with transactions from within a function
- Get to grips with triggers and rules
- Create and manage custom data types
- Create extensions to package code and data
- Implement background workers and Inter-Process Communication (IPC)
- How to deal with foreign languages, in particular Java and Perl
Who this book is for
This book is for database administrators, data engineers, and database engineers who want to implement advanced functionalities and master complex administrative tasks with PostgreSQL 11.
Table of Contents
- PostgreSQL Server-side Programming
- Statement Tricks: UPSERTs, RETURNING, and CTEs
- The PL/pgSQL Language
- Stored Procedures
- PL/Perl and PL/Java
- Rules and the Query Rewriting System
- Inter Process Communications and Background Workers
- Custom Data Types