Modelo de entidade e relacionamento

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1065 palavras )
  • Download(s) : 0
  • Publicado : 10 de maio de 2012
Ler documento completo
Amostra do texto
1. Modelo de Entidade e Relacionamento

Foi desenvolvido um Modelo de Entidade e Relacionamento de uma locadora de filmes. Na locadora o cliente é cadastrado com nome, matricula, sexo, profissão, endereço, email e telefones, cada cliente pode ter dependentes, os quais contêm nome, endereço, sexo e email. Cada filme da locadora possui o título, ano de lançamento e números de Oscar, caso tenharecebido. Cada filme possui uma categoria. As cópias dos filmes são cadastradas de acordo com o tipo da mídia e cada uma com o nome do fabricante, região e idiomas. Cada cliente pode alugar ou fazer reserva de filmes e também opinar sobre o filme que alugou. Caso o filme alugado pelo cliente não for entregue na data determinada é possível informar a multa que deve ser paga.

2. Diagrama deEntidade e Relacionamento

Figura 1 - Diagrama de entidade e relacionamento
O Diagrama de entidade e relacionamento da Figura 1 foi definido a partir do modelo de entidade e relacionamentos descrito no seção 1.

3. Modelo Lógico

Cliente(mat, nome, profissao, end, sexo, email, primary key(mat));
Dependente(id, nome, end, sexo, email, mat, foreign key(mat) references Cliente(mat),primary key(mat,id));
Categoria(codigo, nome)
Filme(cod, titulo, ano, num_oscars, codigo) codigo referencia Categoria
Copia(oid, fabricante, região, tipo_midia, cod) cod referencia Filme
Idiomas_Copia(oid, idioma) oid referencia Copia
Telefones_Clientes(mat, telefone) mat referencia Cliente
Opinioes_Clientes(mat, cod, opiniao, data) mat referencia Cliente, cod referencia FilmeReservas_Clientes(mat, cod, data) mat referencia Cliente, cod referencia Filme
Alugueis_Clientes (mat, oid, data_out, data_in, multa) mat referencia Cliente, oid referencia Copia

4. Códigos SQL

Nesta seção são apresentados os códigos SQL de criação de tabelas, inserção de dados nas tabelas, alteração de valores, remoção de dados e consultas.

5.1. Criação das Tabelas

create table Cliente(matinteger, nome varchar(30) not null, profissao varchar(30), end varchar(50) not null, sexo char(1), email varchar(30), primary key(mat));
create table Dependente(id integer, nome varchar(30) not null, end varchar(50) not null, sexo char(1), email varchar(30), mat integer, foreign key(mat) references Cliente(mat), primary key(mat,id));
create table Categoria(codigo integer, nome varchar(30) notnull, primary key(codigo));
create table Filme(cod integer, titulo varchar(30) not null, ano integer, num_oscars smallint, codigo integer, foreign key (codigo) references Categoria(codigo), primary key (cod));
create table Idiomas_Copia(oid integer, idioma varchar(20) not null, primary key(oid));
create table Copia(oid integer, fabricante varchar(30), cod integer, cod_idioma integer, primary key(oid), foreign key (cod) references Filme(cod), foreign key (cod_idioma) references Idiomas_Copia(oid));
create table Telefones_Clientes(mat integer, telefone varchar (15) not null, primary key(mat,telefone), foreign key(mat) references Cliente(mat));
create table Opinioes_Clientes(mat integer, cod integer, opiniao varchar(400) not null, data date, primary key(mat,cod), foreign key(mat)references Cliente(mat), foreign key(cod) references Filme(cod));
create table Reservas_Clientes(mat integer, cod integer, data date not null, primary key(mat,cod), foreign key(mat) references Cliente(mat), foreign key(cod) references Filme(cod));
create table Alugueis_Clientes(mat integer, oid integer, data_out date not null, data_in date not null, multa numeric(10,2), primary key(mat,oid), foreignkey(mat) references Cliente(mat), foreign key(oid) references Copia(oid));

5.2. Inserção de Dados nas tabelas
INSERT INTO Clientes VALUES (1, ‘Ranieri Luiz’, ‘Estudante’, ‘Rua 12 numero 25 Bairro João de Deus Petrolina’, ‘M’, ‘ranieri@gmail.com’);
INSERT INTO Clientes VALUES (2, ‘João Pedro Raimundo dos Santos’, ‘Encanador’, ‘Rua dos anjos numero 855 Bairro areia branca Petrolina’, ‘M’,...
tracking img