CENTRO UNIVERSITÁRIO CLARETIANO CURSO TECNOLOGIA EM ANÁLISE E

Propaganda
CENTRO UNIVERSITÁRIO CLARETIANO
CURSO TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE
SISTEMAS
MARCO AURÉLIO DA SILVA, RA 1094854
BANCO DE DADOS
SÃO PAULO, SP
2014
Coordenadoria de Educação a Distância – CEAD
MARCO AURÉLIO DA SILVA, RA 1094854
BANCO DE DADOS
Projeto de prática apresentado
para conclusão da disciplina Banco
de Dados
Orientador: Prof. Geraldo Henrique Neto
SÃO PAULO, SP
2014
Coordenadoria de Educação a Distância – CEAD
Introdução
O presente trabalho tem o objetivo de aplicar os conceitos estudados na
disciplina Banco de dados.
Foi proposto um o planejamento e desenvolvimento de um Banco de
Dados após a apresentação de uma situação.
A partir da descrição detalhada da situação foi proposto que se
apresente uma solução que envolva a aplicação das técnicas apresentadas
durante o curso da disciplina.
1ª Etapa (Compreender a situação)
Considere que você esteja projetando um banco de dados para a secretaria
de uma escola ou universidade da sua cidade.
Esse banco de dados deverá conter informações sobre os alunos, as
disciplinas em que cada aluno está matriculado (imagine que alunos da
mesma série podem estar matriculados em diferentes matérias), os
professores e as notas dos alunos em cada matéria e em cada bimestre. O
banco de dados deve manter um cadastro de alunos, de disciplinas
ofertadas, de notas de cada aluno em cada disciplina e de qual disciplina
cada aluno está matriculado.
O sistema deverá, ainda, ser capaz de fornecer, a qualquer momento, a
situação atual do aluno.
Além disso, todo aluno deverá ter um número de matrícula, que é único.
Cada disciplina também terá um código exclusivo.
Compreensão da situação
Entidades reconhecidas
Entidade
Atributo
Aluno
Codigo (chave)
Nome (simples)
Série (simples)
Endereco (composto)
Telefone (composto)
Disciplina
Codigo (chave)
Nome (simples)
Código (chave)
Nome (simples)
Endereco (composto)
Telefone (composto)
Codigo_aluno (chave)
Codigo_diiscplina (chave)
Professor
Nota
Relacionamentos
Relacionamento
Cardinalidade de mapeamento
Aluno matricula-se na Disciplina
(1 – M) um aluno para muitas disciplinas
Professor leciona Disciplina
(M–1) muitas disciplinas para um professor
Aluno possui Nota
(1 – M) um aluno para muitas disciplinas
2ª Etapa
Seu banco de dados deverá atender às necessidades descritas
anteriormente. Com base nesses dados, faça o projeto conceitual do banco
de dados (DE-R – Diagrama Entidade-relacionamento).
3ª Etapa
Com base no DE-R da etapa anterior, faça o mapeamento para o modelo
relacional e aplique nessas relações as formas normais.
1. Identificando as entidades:
Aluno (codigo, serie, nome, endereco, telefone)
Notas (codigoAluno, codigoDiscplina, nota_aluno, data_nota_aluno)
Disciplina (codigo, nome)
Professor (codigo, nome, endereco, telefone)
2. Identificando as chaves estrangeiras
CE
CE
Aluno_matricula (codigoAluno, codigoDisciplina)
CE
CE
Aluno_possui_nota(codigoAluno, codigoDisciplina)
CE
CE
Professor_leciona(codigoProfessor, codigoDisciplina)
Segundo as informações coletadas o Banco de dados teria a seguinte estrutura:
Aluno (codigo, serie, nome, endereco, telefone)
Notas (codigoAluno, codigoDiscplina, nota_aluno, data_nota_aluno)
Disciplina (codigo, nome)
Professor (codigo, nome, endereco, telefone)
Aluno_matricula (codigoAluno, codigoDisciplina)
Aluno_possui_nota(codigoAluno, codigoDisciplina)
Professor_leciona(codigoProfessor, codigoDisciplina)
4ª Etapa
Nesta etapa, com base no modelo relacional elaborado na 3ª etapa, faça o
projeto físico com os comandos da linguagem SQL estudado na Unidade 4
desta disciplina.
CRIANDO A TABELA ALUNO
CREATE TABLE ALUNO (
CODIGO INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
SERIE INT(1) NOT NULL,
NOME VARCHAR(150) NOT NULL,
ENDERECO VARCHAR(150) NOT NULL,
TELEFONE VARCHAR(15) NOT NULL,
PRIMARY KEY (`CODIGO`)
);
CRIANDO A TABELA DISCIPLINA
CREATE TABLE DISCIPLINA(
CODIGO INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
NOME VARCHAR(100),
PRIMARY KEY (CODIGO)
);
CRIANDO A TABELA NOTAS
CREATE TABLE NOTAS(
CODIGOALUNO INT(10) NOT NULL,
CODIGODISCIPLINA INT(10) NOT NULL,
NOTA_ALUNO FLOAT NOT NULL,
DATA_NOTA_ALUNO DATE NOT NULL,
PRIMARY KEY (CODIGOALUNO, CODIGODISCIPLINA),
FOREIGN KEY (CODIGOALUNO) REFERENCES ALUNO(CODIGO),
FOREIGN
KEY
(CODIGODISCIPLINA)
REFERENCES
DISCIPLINA(CODIGO)
);
CRIANDO A TABELA PROFESSOR
CREATE TABLE PROFESSOR(
CODIGO INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
NOME VARCHAR(150) NOT NULL,
ENDERECO VARCHAR(105) NOT NULL,
TELEPHONE VARCHAR(15) NOT NULL,
PRIMARY KEY (CODIGO)
);
CRIANDO A TABELA ALUNO_MATRICULA
CREATE TABLE ALUNO_MATRICULA(
CODIGOALUNO INT(10) NOT NULL,
CODIGODISCIPLINA (10) NOT NULL,
PRIMARY KEY (CODIGOALUNO, CODIGODISCIPLINA),
FOREIGN KEY (CODIGOALUNO) REFERENCES ALUNO(CODIGO),
FOREIGN
KEY
(CODIGODISCIPLINA)
REFERENCES
DISCIPLINA(CODIGO)
);
CRIANDO A TABLEA ALUNO_POSSUI_NOTA
CREATE TABLE ALUNO_POSSUI_NOTA(
CODIGOALUNO INT(10) NOT NULL,
CODIGODISCIPLINA INT(10) NOT NULL,
PRIMARY KEY (CODIGOALUNO, CODIGODISCIPLNA),
FOREIGN
KEY
(CODIGOALUNO)
NOTAS(CODIGOALUNO),
FOREIGN
KEY
(CODIGODISCIPLINA)
NOTAS(CODIGODISCIPLINA)
REFERENCES
REFERENCES
);
CRIANDO A TABELA PROFESSOR_LECIONA
CREATE TABLE PROFESSOR_LECIONA(
CODIGOPROFESSOR INT(10) NOT NULL,
CODIGODISCIPLINA INTE(10) NOT NULL,
PRIMARY KEY (CODIGOPROFESSOR, CODIGODISCIPLINA)
FOREIGN
KEY
(CODIGOPROFESSOR)
REFERENCES
PROFESSOR(CÓDIGO),
FOREIGN
KEY
DISCIPLINA(CÓDIGO)
);
(CODIGODISCIPLINA)
REFERENCES
5ª Etapa
Na 5ª etapa, sua atividade já estará concluída. Assim, copie todos os
arquivos utilizados para uma pasta, compactando-a e postando-a no
Portfólio.
1. Conclusão
O estudo da disciplina de Banco de dados permitiu que compreendesse
a importância de um projeto bem elaborado e consistente.
Não basta apenas dominar as técnicas de construção de Bancos de
dados, mas é preciso um planejamento prévio e antever todas as
possibilidades de ampliação e manutenção de um sistema no futuro.
A modelagem de banco de dados é uma técnica às vezes negligenciada
pelos profissionais de TI. O estudo da disciplina me alertou sobre a
correta modelagem de bancos de dados e me apresentou as técnicas
que colaboram para o uso correto de padrões.
2. Bibliografia
Caderno de referência
Download