Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 25 Próxima »

O formulário CRUD gerado pelo diagrama de dados pode variar dependendo do relacionamento das tabelas do banco de dados, os relacionamentos são:

  • 1to1, a entidade de uma tabela se referencia obrigatoriamente apenas uma unidade da outra;
  • 1toNuma das entidades da tabela A pode referenciar várias unidades da tabela B, porém, do outro lado, cada uma das várias unidades da tabela B só podem estar ligada a uma entidade da tabela A;
  • NtoMneste tipo de relacionamento cada entidade, de ambos os lados, podem referenciar múltiplas unidades da outra.

Relacionamento 1-1

No diagrama de dados, a forma que é definida o relacionamento 1-1 apresenta-se da seguinte maneira:

Figura 1.1 - Relacionamento 1-1

 

No exemplo acima temos duas classes, onde a classe Carro tem 4 atributos (id, marca, modelo e placa) e a classe Cliente tem 3 atributos (id, nome e cpf) mais a chave estrangeira da classe carro.

Formulário

Após fazer a geração da CRUD em cada classe, elas se apresentam da seguinte nas suas respectivas views:

Figura 1.2 - Formulário CRUD Web da classe Cliente


Figura 1.3 - Formulário CRUD Web da classe Carro

Adicionar ou editar dados

Na hora de executar o projeto e acessar o formulário da CRUD, quando for adicionar/editar um dado será mostrado da seguinte maneira:


Figura 1.4 - Adicionar/Editar dado no formulário Carro


Figura 1.5 - Adicionar/Editar dado no formulário Cliente

 

Os itens inseridos na view Carros serão exibidos em uma caixa de seleção na view Cliente, permitindo o relacionamento de um cliente que possui um carro específico.

Observação

Acesse o link Caixa de seleção dinâmica para mais informações sobre o componente.

Relacionamento 1-n

A forma que é definida o relacionamento 1-n apresenta-se da seguinte maneira no diagrama de dados:

Figura 2.1 - Relacionamento 1-n

No exemplo acima, um artista pode possuir diversos álbuns. A classe artista tem dois atributos, o id e o nome, enquanto a classe álbum possui dois atributos também, o id e o título, e a chave estrangeira da classe artista (que aparece após o relacionamento).

Formulário

Após fazer a geração da CRUD em cada classe, elas se apresentam da seguinte maneira quando são abertas na área de trabalho:


Figura 2.2 - Formulário CRUD da classe Artista



Figura 2.3 - Formulário CRUD da classe Álbum

Adicionar ou editar dados

Na hora de executar o projeto e acessar o formulário da CRUD, quando for adicionar/editar um dado será mostrado da seguinte maneira:

Figura 2.4 - Adicionar/Editar dado para classe Artista

 

Figura 2.5 - Adicionar/Editar dado para classe Álbum

Linkar dados

Existe dois métodos para linkar dados no caso de 1-n. Esses dois métodos existem por causa do tipo de relacionamento entre as classes.

O primeiro é utilizando o campo album que é mostrando quando adiciona/edita um artista (Figura 2.6), no qual ao clicar em adicionar aparecerá um pop-up informando os campos do formulário album (Figura 2.7) e ao salvar, o album será linkado automaticamente ao artista que foi criado/editado.

Figura 2.6 - Adicionar/Editar dado para classe Artista


Figura 2.7 - Adicionando dado através do formulário artista


O segundo método é o mesmo que foi apresentado na Linkar dados do Relacionamento 1-1. A Figura 2.1 mostra que a chave estrangeira está na classe Album e o formulário Album mostra o campo da chave estrangeira; quando executar o projeto e adicionar dados em ambos formulários, o link desses dados será feito no formulário Album e basta somente selecionar o dado ao clicar nesse campo (Figura 2.8).

Figura 2.8 - Linkar dados através do formulário álbum

Observação

Para saber mais sobre o funcionamento do componente utilizado no campo carro clique em Caixa de seleção dinâmica.

Relacionamento N-M

Quando é feito esse relacionamento é gerada uma terceira classe (de cor amarela), a mesma receberá as chaves estrangeiras correspondentes às classes que a geraram. 

Figura 3.1 - Relacionamento N-M

Nesse exemplo da figura, um ator pode fazer diversos filmes assim como um filme pode ter diversos atores. A classe filme tem dois atributos (id, nome) assim como a classe atores (id, nome). Já a classe FilmesAtores apresenta três atributos (o id, a chave estrangeira da classe Filmes e a chave estrangeira da classe Atores).

Formulário

Após fazer a geração da CRUD em cada classe, elas se apresentam da seguinte maneira quando são abertas na área de trabalho:

Figura 3.2 - Formulário CRUD da classe Filmes



Figura 3.3 - Formulário CRUD da classe Ator


Figura 3.4 - Formulário CRUD da classe associativa FilmeAtor

Adicionar ou editar dados

Na hora de executar o projeto e acessar o formulário da CRUD, quando for adicionar/editar um dado será mostrado da seguinte maneira:

Figura 3.5 - Adicionar/Editar dado para classe Filmes


Figura 3.6 - Adicionar/Editar dado para classe Ator


Figura 3.7 - Adicionar/Editar dado para classe associativa FilmeAtor

Linkar dados

Existem diversas maneiras para linkar dados quando o relacionamento é n-m.

O primeiro é utilizar o campo que é gerado ao criar a CRUD das classes. Esse campo é o da chave estrangeira, mas ele precisa ser adicionado antes de ser feito a CRUD (Para saber mais, clique aqui) pois as chaves estrangeiras vão para a classe associativa. Pode ser tanto em formato de grade (Figura 3.8) quanto de lista (Figura 3.9).

Figura 3.8 - Linkar dado utilizando grade no formulário Filme

 

Figura 3.9 - Linkar dado utilizando lista no formulário Ator

 

Observação

 O componente utilizado para linkar dados na Figura 3.9 é o Caixa de seleção múltipla.

A segunda forma é utilizar o campo da classe associativa (na Figura 3.5 e na 3.6 é o campo FilmeAtor), que também é necessário ser adicionado antes de gerar a CRUD, Ele tem o mesmo comportamento que é apresentado na Figura 3.8. Ao clicar em adicionar será aberto um popup da respectiva chave estrangeira da tabela.

A terceira forma seria gerar o CRUD da classe associativa e fazer o link dos dados através dela. Ambos os campos são componentes do tipo Caixa de seleção dinâmica.

Figura 3.10 - Linkar dados através do formulário da classe associativa

Nessa Página

  • Sem rótulos