Introducció

PostgreSQL és un sistema de gestió de bases de dades relacionals (SGBDR) de codi obert, conegut per la seva robustesa, extensibilitat i conformitat amb els estàndards SQL. És una eina poderosa que permet emmagatzemar, gestionar i recuperar dades de manera eficient i segura.

Característiques clau de PostgreSQL

  1. Codi obert: PostgreSQL és completament gratuït i el seu codi font està disponible per a tothom. Això permet una gran comunitat de desenvolupadors que contribueixen a la seva millora contínua.
  2. Conformitat amb els estàndards SQL: PostgreSQL segueix els estàndards SQL, assegurant que les consultes i operacions siguin consistents i compatibles amb altres sistemes de bases de dades.
  3. Extensibilitat: Permet als usuaris definir nous tipus de dades, funcions, operadors, i molt més. Això fa que PostgreSQL sigui molt flexible i adaptable a diferents necessitats.
  4. Integritat de dades: Ofereix característiques avançades com les claus primàries, claus estrangeres, restriccions de verificació i triggers per assegurar la integritat de les dades.
  5. Suport per a transaccions: PostgreSQL suporta transaccions ACID (Atomicitat, Consistència, Aïllament, Durabilitat), assegurant que les operacions de la base de dades siguin fiables i segures.
  6. Escalabilitat: Pot gestionar des de petites aplicacions fins a grans sistemes amb milions de registres i múltiples usuaris concurrents.
  7. Funcionalitats avançades: Inclou suport per a JSON, XML, cerca de text complet, dades geoespacials amb PostGIS, i molt més.

Història de PostgreSQL

PostgreSQL té una llarga història que es remunta a la dècada de 1980:

  • 1986: El projecte comença a la Universitat de Califòrnia, Berkeley, sota el nom de "POSTGRES", liderat pel Dr. Michael Stonebraker.
  • 1996: El projecte es renombra a "PostgreSQL" per reflectir el seu suport per a SQL.
  • Actualitat: PostgreSQL ha evolucionat constantment, amb noves versions que afegeixen funcionalitats i millores de rendiment.

Comparació amb altres SGBDR

Característica PostgreSQL MySQL Oracle SQL Server
Codi obert No No
Conformitat SQL Alta Moderada Alta Alta
Extensibilitat Alta Moderada Alta Moderada
Suport per a JSON
Suport per a transaccions ACID
Escalabilitat Alta Alta Alta Alta
Comunitat Gran Gran Mitjana Mitjana

Exemples pràctics

Exemple 1: Creació d'una base de dades

CREATE DATABASE exemple_db;

Exemple 2: Creació d'una taula

CREATE TABLE usuaris (
    id SERIAL PRIMARY KEY,
    nom VARCHAR(100),
    email VARCHAR(100) UNIQUE
);

Exemple 3: Inserció de dades

INSERT INTO usuaris (nom, email) VALUES ('Joan', '[email protected]');

Exemple 4: Consulta de dades

SELECT * FROM usuaris;

Exercicis pràctics

Exercici 1: Creació d'una base de dades i una taula

  1. Crea una base de dades anomenada biblioteca.
  2. Dins de la base de dades biblioteca, crea una taula anomenada llibres amb les següents columnes:
    • id (tipus SERIAL, clau primària)
    • títol (tipus VARCHAR(255))
    • autor (tipus VARCHAR(255))
    • any_publicació (tipus INTEGER)

Solució

CREATE DATABASE biblioteca;

\c biblioteca

CREATE TABLE llibres (
    id SERIAL PRIMARY KEY,
    títol VARCHAR(255),
    autor VARCHAR(255),
    any_publicació INTEGER
);

Exercici 2: Inserció i consulta de dades

  1. Insereix tres llibres a la taula llibres.
  2. Consulta tots els llibres de la taula llibres.

Solució

INSERT INTO llibres (títol, autor, any_publicació) VALUES
('El Quixot', 'Miguel de Cervantes', 1605),
('Cien años de soledad', 'Gabriel García Márquez', 1967),
('1984', 'George Orwell', 1949);

SELECT * FROM llibres;

Conclusió

En aquesta secció hem après què és PostgreSQL, les seves característiques clau, una mica de la seva història i com es compara amb altres sistemes de gestió de bases de dades relacionals. També hem vist alguns exemples pràctics i hem realitzat exercicis per reforçar els conceptes apresos. En el següent tema, explorarem com instal·lar PostgreSQL al nostre sistema.

Curs de PostgreSQL

Mòdul 1: Introducció a PostgreSQL

Mòdul 2: Operacions bàsiques de SQL

Mòdul 3: Consultes SQL avançades

Mòdul 4: Disseny de bases de dades i normalització

Mòdul 5: Funcionalitats avançades de PostgreSQL

Mòdul 6: Optimització i millora del rendiment

Mòdul 7: Seguretat i gestió d'usuaris

Mòdul 8: Treballant amb JSON i funcionalitats NoSQL

Mòdul 9: Extensions i eines avançades

Mòdul 10: Estudis de cas i aplicacions del món real

© Copyright 2024. Tots els drets reservats