Laboratório Prático

// Criando e Gerenciando um Banco

Construir e gerenciar um sistema de biblioteca.

  • Criar um banco com MER, DDL, DML.
  • Usar pgAdmin e MySQL Workbench.
  • Conectar via PHP remotamente.
Atividade: Cite um objetivo do laboratório.

Modelagem ER

// Sistema de Biblioteca

Entidades: Livros, Usuários, Empréstimos.

Livros livro_id, titulo, autor Usuários usuario_id, nome, email Empréstimos emprestimo_id, livro_id, usuario_id livro_id usuario_id
Atividade: Identifique uma entidade no MER.

Mapeamento e DDL

// Criando Tabelas

Mapear o MER para tabelas relacionais com DDL.

db_admin@postgres:~#

CREATE TABLE livros (
  livro_id INT PRIMARY KEY,
  titulo VARCHAR(100),
  autor VARCHAR(50),
  ano_publicacao INT
);
CREATE TABLE usuarios (
  usuario_id INT PRIMARY KEY,
  nome VARCHAR(50),
  email VARCHAR(100)
);
CREATE TABLE emprestimos (
  emprestimo_id INT PRIMARY KEY,
  livro_id INT,
  usuario_id INT,
  data_emprestimo DATE,
  FOREIGN KEY (livro_id) REFERENCES livros,
  FOREIGN KEY (usuario_id) REFERENCES usuarios
);
          
Atividade: Escreva DDL para a tabela livros.

População de Dados

// Inserindo Dados de Teste

Inserir dados de teste com DML.

db_admin@postgres:~#

INSERT INTO livros (livro_id, titulo, autor, ano_publicacao)
VALUES (1, '1984', 'George Orwell', 1949);
INSERT INTO usuarios (usuario_id, nome, email)
VALUES (1, 'Ana Silva', 'ana@email.com');
INSERT INTO emprestimos (emprestimo_id, livro_id, usuario_id, data_emprestimo)
VALUES (1, 1, 1, '2025-08-01');
          
Atividade: Insira um usuário via DML.

Consultas SQL

// Recuperando Dados

Escrever consultas DML para análise de dados.

db_admin@postgres:~#

SELECT l.titulo, u.nome
FROM livros l
JOIN emprestimos e ON l.livro_id = e.livro_id
JOIN usuarios u ON e.usuario_id = u.usuario_id
WHERE e.data_emprestimo > '2025-01-01';
SELECT u.nome, COUNT(e.emprestimo_id)
FROM usuarios u
LEFT JOIN emprestimos e ON u.usuario_id = e.usuario_id
GROUP BY u.nome
HAVING COUNT(e.emprestimo_id) > 0;
          
Atividade: Escreva uma consulta para listar livros.

pgAdmin e MySQL Workbench

// Gerenciando o Banco

Use ferramentas GUI para criar e gerenciar o banco.

  1. Conectar ao SGBD (PostgreSQL/MySQL).
  2. Criar o banco biblioteca via GUI.
  3. Executar DDL e DML no editor SQL.
  4. Gerar diagrama ER (MySQL Workbench).
db_admin@pgadmin:~#

CREATE DATABASE biblioteca;
          
Atividade: Crie o banco biblioteca no pgAdmin.

Conexão Remota com PHP

// Acessando o Banco

Conectar ao banco via PHP e listar livros.

php@biblioteca:~#

";
}
pg_close($conn);
?>
          
Atividade: Modifique o PHP para listar usuários.

Referências

// Fontes e Leitura Complementar

  • Date, C. J. Introdução a Sistemas de Banco de Dados
  • Documentação oficial do PostgreSQL
  • Documentação do MySQL Workbench
  • PHP Manual: pg_connect