2. Fases no desenvolvimento de um Banco de
Dados
Análise de Requisitos
Modelagem Conceitual
Modelagem Lógica
Projeto Físico
Implementação
Testes e Validação
Implantação
Manutenção e Evolução
3. Análise de Requisitos
É primeira fase do desenvolvimento de um banco de dados,
envolve a coleta e documentação dos requisitos do usuário.
Nesta fase, é importante identificar os objetivos do banco de
dados e as necessidades do usuário, para que possam ser
definidas as entidades e relacionamentos que serão
modelados.
4. Modelagem Conceitual
Nesta etapa, é criado o modelo conceitual do banco de dados,
utilizando técnicas como o Diagrama de Entidade-Relacionamento
(DER). O modelo conceitual representa as entidades, seus
relacionamentos e os atributos associados a elas. É uma fase
importante para estabelecer a estrutura básica do banco de dados.
5. Modelagem Lógica
Nesta fase, o modelo conceitual é transformado em um modelo
lógico, geralmente utilizando uma linguagem de modelagem como
o Modelo Relacional. O modelo lógico define as tabelas, as colunas
e as relações entre elas, bem como as chaves primárias e
estrangeiras. É nesta fase que se define a estrutura detalhada do
banco de dados.
6. Projeto Físico
Nesta fase, o banco de dados é criado.
São executados scripts de criação de
tabelas, índices e outras estruturas, bem
como scripts de carga de dados iniciais.
Também são realizados testes para
garantir que o banco de dados esteja
funcionando corretamente.
10. Linguagem SQL
Considerada pelo American National Standard Institute (ANSI) uma linguagem
de consulta padrão de BDs desde 1986, a SQL surgiu no início da década de
1970 como uma interface para o SYSTEM R – um SGBD relacional da IBM.
Uma grande variedade de SGBDs no mercado suporta a linguagem SQL. Isso a
tornou uma linguagem padrão de BDs relacionais e levou o ANSI a publicar um
padrão SQL.
11. Linguagem SQL
➢ Características principais
1. Apresenta comandos para criação, alteração e exclusão de tabelas,
relacionamentos e índices. Esse subconjunto de comandos, o Data
Definition Language (DDL), será o nosso ponto de partida nesta aula.
2. Possui um subconjunto de comandos para a manipulação de dados, o
Data Manipulation Language (DML), que permite inserir, alterar ou
excluir os registros/linhas de uma tabela.
12. Linguagem SQL
3. Permite gerenciar a segurança das informações no BD, atribuindo
níveis diferenciados de autorização a usuários ou grupos de usuários.
4. Define regras sobre informações armazenadas pela especificação de
restrições de integridade.
5. Cria visões. A SQL permite que se restrinja acesso a determinadas
tabelas criando “visões”.
13. Linguagem SQL
6. Permite melhor controlar transações. No caso de uma eventual falha que
ocorra no meio do transferência bancária não pode resultar na atualização
apenas da conta A, pois a tecnologia de transações em BD evita problemas de
integridade em razão da atualização parcial de dados.
7. Manipula dados por uma linguagem embutida (Embedded Data Manipulation
Language) especialmente projetada para o acesso ao BD por meio de linguagens
de programação Java e PHP. É esse recurso que permite a programas aplicativos
acessarem e manipularem o BD.
14. MySQL
O MySQL, no Brasil pronuncia-se “Mai Ésse Que Éle”, é um SGBD
desenvolvido pela MySQL AB, que agora é propriedade da Sun
Microsystems. Em 2009, a Sun foi adquirida pela Oracle, uma
reconhecida desenvolvedora de SGBDs
Algumas características do MySQL:
1. Facilidade de instalação.
2. É um software “enxuto”, de tamanho reduzido, facilmente executado
em hardware de configuração modesta e, consequentemente, com
grande velocidade de recuperação de informações.
3. Apresenta interface de fácil utilização para outros softwares, como as
linguagens de programação C, Java, Perl, PHP, Python, Ruby.
15. MySQL
4. Apresenta modalidades diferenciadas de licença: uma versão gratuita e
outra paga.
5. Dispõe de suporte técnico para usuários.
6. Utiliza a linguagem SQL.
7. Apresenta interface de linha de código (no estilo prompt do DOS), mas o
MySQL possui inúmeras ferramentas com interface gráfica baseada em janelas
como a do Windows adquiridas separadamente: algumas gratuitas, outras não.
16. Como criar um Banco de Dados
➢ Comando: CREATE DATABASE;
Sintaxe: CREATE DATABASE < NOME DO BANCO DE DADOS >;
Como exemplo, vamos criar um BD de nome BIBLIOTECA com o comando:
CREATE DATABASE BIBLIOTECA;
➢ Comando: SHOW DATABASES;
Lista todos os BDs existentes em sua máquina. Você pode ter vários Bancos de
Dados MySQL em seu computador.
17. Como criar um Banco de Dados
➢ Criamos o BD BIBLIOTECA, mas ainda não o abrimos. Para
efetuar qualquer operação no BD BIBLIOTECA, como criar as
tabelas e nelas inserir dados, precisamos antes “abrir” ou
“entrar” nesse BD utilizando o comando USE do MySQL:
Sintaxe: USE < nome-do-banco de dados > ;
USE BIBLIOTECA ;
➢ Deletando um BD com comando DROP.
Sintaxe: DROP DATABASE [Nome do Banco];
DROP DATABASE BIBLIOTECA ;
18. Criação de tabelas
Uma vez dentro do BD BIBLIOTECA e de posse do MER e
MRN, podemos criar tabelas e relacionamentos.
Figura ao lado mostra Diagrama do Sistema de
Gerenciamento de BIBLIOTECA.
Comando:
CREATE TABLE [Nome da Tabela] ( Atributo1 : Tipo,
Atributo2: Tipo,
Atributo N : Tipo N ) ;
19. Criação de tabelas
Com a tabela GENERO “CREATE TABLE GENERO (...)”.
O parêntese aberto logo após o nome da tabela indica que, em seguida,
descreveremos uma lista de colunas/atributos.
A definição de cada atributo deve ser separada de outra por vírgula.
20. Criação de tabelas
ID_GENERO CHAR(3) NOT NULL PRIMARY KEY, define uma coluna com
as seguintes características:
Nome da coluna é ID_GENERO.
Tipo de dado: CHAR(3). O tipo caractere aceita combinações de
algarismos (de “0” a “9”), letras (de “A” a “a” ) e símbolos como
“#”, “@”. O tamanho igual a 3 significa que essa coluna pode
armazenar combinações de até três caracteres. Exemplo: “LIT”,
“AA”, “F”.
A expressão “NOT NULL” (“NÃO NULO”) determina que o
preenchimento é obrigatório. O SGBD não permitirá que se tente
inserir uma linha (registro) nessa tabela sem que se informe algum
valor para essa coluna.
A expressão “PRIMARY KEY” (“CHAVE PRIMÁRIA”) define essa
coluna como a chave primária simples dessa tabela. Mais adiante
mostraremos como definir chaves primárias compostas.
21. Tipos de Dados
No MySQL, os principais tipos são:
Tipo Nome Descrição
Caractere char(n) String de tamanho fixo
Caractere varchar(n) String de tamanho variável
Numérico de ponto fixo
decimal(p,e) ou
numeric(p,e)
(“p ”representa o total de
dígitos; “e” o número de
casas decimais )
Numérico de ponto
aproximado
float, real Numero com ponto flutuante
Numérico inteiro Int, smallint, bigint Números que usam dados
inteiros
Data e hora Datatime, smalldatetime Armazena Data e hora no
mesmo atributo
Data Date Tipo para armazenar Data
Hora Time Tipo para armazenar Hora
22. Criação de tabelas
Criando da tabela “USUARIO” com suas cinco colunas.
As novidades nesse comando são:
O atributo AUTO_INCREMENT na definição da coluna MATRICULA, permite que o
valor desta última seja omitido no momento de inserção de um novo registro.
23. Criação de tabelas
O comando DESCRIBE nos permite checar as características de uma tabela
criada:
Sintaxe: DESCRIBE < NOME_TABELA >;
Para acessar as informações sobre a tabela USUARIO, por exemplo, devemos
digitar DESCRIBE USUARIO; e teclar <ENTER>.
24. Criação de tabelas
Chave estrangeira: é um atributo da tabela que
faz referência a uma chave primária de outra
tabela.
Na tabela OBRA , mostrada ao lado, o comando
FOREIGN KEY especificar que o atributo
ID_GENERO da tabela OBRA, faz referência ao
atributo ID_GENERO da tabela GENERO.
ID_GENERO em OBRA somente poderá conter
valores previamente inseridos em ID_GENERO de
GENERO.
25. Criação de tabelas
➢ A expressão ON DELETE RESTRICT
Impede que o registro de GENERO com um dado ID_GENERO seja excluído se
o mesmo valor de ID_GENERO existir em pelo menos um registro de OBRA.
Assim, não podemos excluir um GENERO com ID_GENERO = “DID” se existir
pelo menos um registro de OBRA com ID_GENERO = “DID”.
➢ A expressão ON DELETE CASCADE
Propagará o efeito da exclusão de um ou mais atributos em tabelas que
tiverem relação uma com as outras. Assim, se excluirmos o registro de
AUTOR com ID_AUTOR = 135, o SGBD se encarregará de, automaticamente,
excluir todos os registros de AUTORIA com ID_AUTOR = 135 – sejam eles
quantos forem.
26. Criação de tabelas
➢ Chave primária composta
Na tabela MOVIMENTAÇÃO , mostrado ao
lado, a chave primaria é composta dos
atributos: MATRICULA, NR_LIVRO e
DATA_EMPRESTIMO.
Individualmente, esses campos podem
apresentar valores repetidos, mas jamais
poderá haver um registro de
MOVIMENTACAO com repetição de valores
para a combinação dos três campos.
27. Criação de tabelas
➢ Comando SHOW TABLES;
Listará o nome de todas as tabelas criadas em nosso banco
BIBLIOTECA.
➢ Comando DROP TABLE;
Deleta tabelas do BD.
Sintaxe: DROP TABLE MOVIMENTACAO;