A normalização é um processo que visa a aplicação de regras a todas as tabelas de um banco de dados, examinando as suas colunas e a relação entre as entidades. Ela tem como principal objetivo a organização de um bancos de dados, facilitando a sua manipulação e promovendo um ganho de performance.
Um banco de dados é um conjunto de arquivos relacionados entre si, com registros que podem ser de lugares, pessoas ou qualquer coisa. Esses dados ficam armazenados de maneira estruturada, onde tenham a menor redundância possível, e para isso usamos a linguagem de programação SQL.
Structured Query Language (Linguagem de Consulta Estruturada), é uma linguagem utilizada para manipular informações em banco de dados.
Um exemplo de comando SQL: SELECT * FROM clientes WHERE nome = "João".
SELECT: comando usado para acessar informações no banco de dados.
*: indica que o banco de dados deverá retornar todos os campos de informação (nome, telefone, endereço...)
FROM: comando usado para indicar de que tabela de dados as informações serão obtidas
clientes: o nome da tabela que contém os dados que você quer acessar.
WHERE nome = "João": comando opcional usado para restringir os resultados. Neste exemplo, serão retornados somente os registros onde o campo 'nome' contenha 'João'.
Para gerenciar esse banco de informações é recomendado a utilização de um Sistema de Gerenciamento de Banco de Dados (SGBD), que nada mais é do que o um software que se responsabiliza por gerenciar uma base de dados, retirando a responsabilidade da aplicação principal de realizar o acesso, organização e manipulação dos dados.
Os SGBDs podem ser classificados em quatro tipos principais. Outras classificações podem ser utilizadas sendo variações ou modelos híbridos dos citados abaixo:
- Hierárquicos
- Em rede
- Relacional
- Orientado a objeto
Alguns exemplos de SGBDs são o MySQL, o PostgreeSQL e o Microsoft SQL Server
Com relação ao desenho apresentado em sala de aula, o Banco de Dados está diretamente relacionado ao DER, uma vez que o DER é utilizado para facilitar o trabalho do projetista do banco de dados, pois ele mostra de maneira clara a relação entre as entidades.