PostgreSQL Exercises

Sharpen PostgreSQL skills through a series of hands-on exercises. This collection of practical challenges is designed to test and improve the ability to solve real-world database problems using PostgreSQL. Each exercise provides an opportunity to apply theoretical knowledge to concrete scenarios, from basic queries to advanced data manipulation and administration tasks, solidifying understanding and building confidence.

How to start PostgreSQL in Kali Linux

How to start PostgreSQL in Kali Linux

Discover how to set up and manage PostgreSQL databases in Kali Linux, a powerful cybersecurity tool. Learn the essential steps to get started with PostgreSQL for your cybersecurity projects.
LabPostgreSQL
Database Management Basics with PostgreSQL

Database Management Basics with PostgreSQL

In this lab, you will learn the fundamentals of database management using PostgreSQL. The lab covers creating, listing, connecting to, and dropping databases. Explore basic database administration tasks and view database metadata in PostgreSQL.
LabPostgreSQL
PostgreSQL Table Creation and Data Types

PostgreSQL Table Creation and Data Types

In this lab, we will explore PostgreSQL table creation and data types. We'll connect to PostgreSQL using `psql`, create tables with primary keys, and add constraints like `NOT NULL` and `UNIQUE`. We will then inspect the table structure and insert data to demonstrate data types.
LabPostgreSQL
PostgreSQL Advanced Data Types

PostgreSQL Advanced Data Types

In this lab, you will explore PostgreSQL's advanced data types, focusing on JSON/JSONB, arrays, and UUIDs. You'll learn how to store, query, and manipulate data within these types. The lab covers storing and querying JSON/JSONB, creating array columns, and using UUIDs as identifiers.
LabPostgreSQL
PostgreSQL Advanced Query Writing

PostgreSQL Advanced Query Writing

In this lab, you will enhance your PostgreSQL query writing skills by exploring advanced techniques. You'll learn subqueries, CTEs, window functions like ROW_NUMBER, and GROUP BY/HAVING clauses to extract meaningful insights from your datasets.
LabPostgreSQL
PostgreSQL Index Optimization

PostgreSQL Index Optimization

In this lab, you will learn how to optimize PostgreSQL database performance through indexing. You'll create a sample table, analyze query plans, build multi-column indexes, and remove unused indexes. This hands-on experience provides practical skills in PostgreSQL index management.
LabPostgreSQL
PostgreSQL Relationships and Joins

PostgreSQL Relationships and Joins

In this lab, you will explore PostgreSQL relationships and joins. You'll create tables with foreign key constraints, insert data ensuring referential integrity, query data using INNER JOIN, and compare LEFT, RIGHT, and FULL OUTER JOIN results to understand data relationships.
LabPostgreSQL
PostgreSQL Role and Permission Management

PostgreSQL Role and Permission Management

In this lab, you will explore PostgreSQL role and permission management. The primary goal is to learn how to create roles with specific attributes and manage database privileges. You'll grant privileges, switch users, and revoke access.
LabPostgreSQL
PostgreSQL Transaction Management

PostgreSQL Transaction Management

In this lab, you will explore PostgreSQL transaction management, a crucial aspect of ensuring data integrity. You'll learn to begin and commit transactions, roll back failed transactions, set isolation levels, and simulate locks with concurrent updates. Practice with accounts table and fund transfers.
LabPostgreSQL
PostgreSQL Views Management

PostgreSQL Views Management

In this lab, you will explore PostgreSQL Views Management. The primary goal is to understand and implement different types of views, including simple views and materialized views. You'll learn to define, query, modify, create, populate, and refresh views.
LabPostgreSQL
Verify PostgreSQL Connection Details

Verify PostgreSQL Connection Details

In this challenge, verify PostgreSQL server operational status after a critical alert. Confirm the server accepts connections and connect to the 'postgres' database using `pg_isready` and `psql` commands as the `postgres` user. Ensure the PostgreSQL service is functioning correctly.
ChallengePostgreSQL
Create Your Own Recipe Database

Create Your Own Recipe Database

In this challenge, you'll embark on a culinary journey by creating your own recipe database using PostgreSQL. As a budding food blogger, you'll set up a dedicated database named `recipe_db` to manage your growing collection of recipes.
ChallengePostgreSQL