Ad Unisul
Exames: Ad Unisul. Pesquise 862.000+ trabalhos acadêmicosPor: larra123 • 27/10/2013 • 524 Palavras (3 Páginas) • 527 Visualizações
1. Sejam os seguintes depósitos de dados, que representam o processo de alocação de um professor em um determinado curso, ou seja que representa em qual cidade o professor mora, e em qual curso ministra aulas:
DADO TIPO OPCIONAL
PROFESSOR
Código Integer(5) Não
Nome Varchar(30) Não
Data Nascimento Date Sim
Cidade Integer(5) Não
CURSO
Código Integer(5) Não
Nome Varchar(30) Não
Tipo Turno (Matutino/Vespertino/Noturno) Varchar(15) Não
ALOCACAO
Curso Integer(5) Não
Professor Integer(5) Não
Data alocação Date Não
CIDADE
Código Integer(5) Não
Nome Varchar(30) Não
U.F. Varchar(2) Não
Em relação ao dados acima referente a alocação de um professor em um determinado curso, crie um modelo E.R. normalizado, utilizando uma das ferramentas cases estudadas no livro didático, implementando as seguintes regras básicas: (3,0 pontos)
O que identifica o professor é o seu código
O que identifica o curso é o código do curso
O que identifica a alocação é o código do professor e o código do curso
O que identifica a cidade é o código da cidade
Um professor deve morar numa cidade
Um professor pode ser alocado em vários cursos
Um curso pode ser lecionado por vários professores
Resposta:
2) Descreva os comandos SQL – DDL para a criação dos objetos do banco de dados com o modelo acima. (3 pontos)
Resposta:
/*
Created 8/8/2010
Modified 8/8/2010
Project Unisul
Model 1.0
Company Unisul
Author Marcelo Larratea
Version 1.0
Database mySQL 5
*/
drop table IF EXISTS Cidade;
drop table IF EXISTS Alocacao;
drop table IF EXISTS Curso;
drop table IF EXISTS Professor;
Create table Professor (
Codigo INT(5) NOT NULL,
Nome Varchar(30),
Data_nascimento Date,
Cidade INT(5),
Codigo_cidade INT(5) NOT NULL,
Primary Key (Codigo,Codigo_cidade)) ENGINE = MyISAM;
Create table Curso (
Codigo_curso INT(5) NOT NULL,
Codigo INT(5) NOT NULL,
Nome Varchar(30),
Tipo_turno Varchar(15),
Codigo_cidade INT(5) NOT NULL,
Primary Key (Codigo_curso,Codigo,Codigo_cidade)) ENGINE = MyISAM;
Create table Alocacao (
Curso INT(5) NOT NULL,
Codigo INT(5) NOT NULL,
Professor INT(5) NOT NULL,
Data_alocacao Date,
Codigo_cidade INT(5) NOT NULL,
Primary Key (Curso,Codigo,Professor,Codigo_cidade)) ENGINE = MyISAM;
Create table Cidade (
Codigo_cidade INT(5) NOT NULL,
Nome Varchar(30),
U_F_ Varchar(2),
Primary Key (Codigo_cidade)) ENGINE = MyISAM;
Alter table Alocacao add Foreign Key (Codigo,Codigo_cidade) references Professor (Codigo,Codigo_cidade) on delete restrict on update restrict;
Alter table Curso add Foreign Key (Codigo,Codigo_cidade) references Professor (Codigo,Codigo_cidade) on delete restrict on update restrict;
Alter table Professor add Foreign Key (Codigo_cidade) references Cidade (Codigo_cidade) on delete restrict on update restrict;
/* Users permissions */
3) Dos comandos DML estudados, insira 5 linhas para cada tabela criada na questão 2, utilizando o comando de inserção. (2,0 pontos)
Resposta:
...