Schița de curs

Day 1 – Advanced SQL for Developers

  • Review of relational design and SQL fundamentals
  • Advanced SELECT queries and filtering
  • Complex joins and subqueries
  • Set operations (UNION, INTERSECT, EXCEPT)
  • Window and ranking functions
  • Common Table Expressions (CTEs) and recursion
  • Data integrity constraints (PRIMARY KEY, FOREIGN KEY, CHECK, UNIQUE)

Day 2 – Database Objects and Schema Design

  • Creating and managing schemas
  • Designing tables for efficiency and normalisation
  • Data types, domains, and enumerations
  • Indexing for developers (B-tree, partial, and expression-based indexes)
  • Views and materialised views
  • Managing dependencies and ownerships

Day 3 – Introduction to PL/pgSQL

  • What is PL/pgSQL and when to use it
  • Syntax, variables, and control structures (IF, LOOP, CASE)
  • Exception handling and error control
  • Using parameters and return values
  • Cursors and iterating over query results
  • Dynamic SQL with EXECUTE

Day 4 – Functions, Procedures, and Triggers

  • Creating reusable stored functions
  • Overloading and polymorphic functions
  • Procedures vs functions
  • Implementing triggers for data integrity and automation
  • BEFORE/AFTER triggers, row-level vs statement-level
  • Using OLD and NEW variables
  • Conditional execution using WHEN clauses

Day 5 – Application Integration and Job Automation

  • Using PL/pgSQL in real applications (via JDBC/Psycopg/ORM)
  • Working with JSON and JSONB data
  • Using DO blocks and anonymous code execution
  • Using PgAgent for job scheduling
  • Debugging and testing PL/pgSQL code
  • Security considerations for developers (permissions, SQL injection, RLS)

Cerințe

  • Basic understanding of SQL and relational databases
  • Experience with any programming language (e.g. Python, Java, C#, etc.)

Audience

Application Developers, Data Engineers, and Database Developers who need to create stored functions, triggers, and database-side logic in PostgreSQL

 35 ore

Numărul de participanți


Pret per participant

Mărturii (3)

Cursuri viitoare

Categorii înrudite