[UFMS Digital] Banco de Dados - Módulo 2
Módulo 2: Definição e Manipulação de Dados Relacionais
Introdução ao SQL
- O módulo 2 aborda a definição e manipulação de dados relacionais, com foco na linguagem SQL, que é fundamental para sistemas de gerenciamento de banco de dados (SGBDs).
- A SQL se origina da teoria dos conjuntos, passando pela álgebra relacional e cálculo relacional, formando a base para sua estrutura.
Tipos de Linguagens em SQL
- Existem duas principais categorias dentro do SQL:
- Linguagem de Definição de Dados (DDL): Utilizada para criar a estrutura do banco de dados.
- Linguagem de Manipulação de Dados (DML): Usada para manipular os dados armazenados no banco.
Funções da DDL e DML
- A DDL permite definir o esquema do banco, enquanto a DML é utilizada por diversos papéis profissionais como projetistas e engenheiros de software.
- A DML inclui comandos essenciais como inclusão, recuperação, exclusão e modificação dos dados.
Estrutura do Banco de Dados
- Para criar um banco relacional no PostgreSQL, utiliza-se o comando
CREATE DATABASE, seguido pela criação dos esquemas.
- Dentro dos esquemas podem ser criados objetos como tabelas, índices e visões.
Criação e Definição das Tabelas
- As tabelas são definidas utilizando o comando
CREATE TABLE, onde cada atributo possui um domínio específico (ex.: tipo string ou data).
- Restrições podem ser aplicadas aos atributos; por exemplo, um CPF deve ser único entre os registros na tabela.
Restrições em Tabelas
- Além das restrições nos atributos individuais (como unicidade), as tabelas também podem ter restrições relacionadas à integridade referencial através das chaves estrangeiras.
Estruturas de Banco de Dados Relacional
Definição e Criação de Tabelas
- O banco de dados relacional é composto por tabelas interconectadas, que devem estar relacionadas por integridade referencial.
- Um exemplo prático é a tabela "funcionário", que possui atributos como ID (inteiro), nome (cadeia de caracteres variável), CPF (cadeia fixa de 11 caracteres) e número do departamento (inteiro).
- Cada atributo tem um domínio definido; por exemplo, o ID deve ser sempre um valor inteiro e o nome pode ter até 50 caracteres.
Restrições em Atributos
- As restrições são importantes para garantir a integridade dos dados. O campo ID não pode ser nulo, assegurando que cada entrada tenha um valor único.
- A chave primária é uma restrição que garante unicidade nas entradas da tabela, não permitindo valores duplicados ou nulos.
Chaves Estrangeiras e Relacionamentos
- A chave estrangeira aponta para a chave primária de outra tabela, permitindo relacionar dados entre diferentes tabelas.
- No exemplo da tabela "funcionário", o campo "número do departamento" é uma chave estrangeira que referencia a tabela "departamento".
Manipulação de Dados com DML
- Após definir as estruturas do banco, utiliza-se DML para manipular os dados através de comandos como inserção, atualização e remoção.
Comandos SQL Básicos
- O comando
INSERTpermite adicionar novas linhas à tabela. Por exemplo, ao inserir um novo departamento na tabela "departamento".
- Para remover registros, utiliza-se o comando
DELETE, onde condições podem ser aplicadas para especificar quais entradas devem ser apagadas.
Atualização de Registros
Consultas e Atualizações em Banco de Dados
Estrutura de Atualização de Dados
- O processo envolve a alteração de valores em uma dupla, onde cada atributo recebe um novo valor conforme as condições estabelecidas.
- As consultas são realizadas para recuperar dados do disco, permitindo visualizar as duplas solicitadas através do comando SQL.
Comando SELECT e Atributos
- O comando
SELECTé utilizado para selecionar atributos específicos; caso não sejam especificados, todos os atributos podem ser retornados usando o asterisco (*).
- A consulta pode incluir condições que filtram os resultados, como retornar apenas nomes e CPF dos funcionários de um determinado departamento.
Natureza das Consultas
- É importante notar que o comando de consulta não altera os dados no banco; ele apenas recupera e exibe informações sem modificar tabelas ou duplas.
- Existem diversas variações nas consultas que serão exploradas mais detalhadamente, incluindo operações de junção e manipulação de conjuntos.
Funções Agregadas e Agrupamento
- As consultas podem incluir funções agregadas como
SUMeCOUNT, agrupando resultados por atributos específicos na cláusulaGROUP BY.
- O universo das consultas é vasto, permitindo realizar análises complexas para atender diferentes necessidades informacionais.
Revisão da Unidade 1
- A unidade 1 abrange a linguagem de definição de dados (DDL), incluindo criação de bancos, esquemas, tabelas, restrições e views.