| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 13:09:53
|
buthy
HelloWorld
Membro desde: 04/03/2010 07:36:49
Mensagens: 10
Offline
|
Dae galera Estou utilizando o DBDesigner 4 para modelar o bando de dados de uma escola de idiomas (trabalho de faculdade) Queria saber como que eu vou fazer para modelar uma tabela de uma Questão de Assinalar com o seguintes atributos: Código da Questão Pergunta? a) resposta 1 b) resposta 2 c) resposta 3 d) resposta 4 sendo que a resposta correta vai ficar variando... Obrigado
This message was edited 2 times. Last update was at 09/03/2010 13:10:44
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 13:11:33
|
nextuser
JavaEvangelist
![[Avatar]](/images/avatar/fe10b3c08a1273145b1df65fc4ba484b.png)
Membro desde: 15/12/2008 11:21:08
Mensagens: 400
Localização: São Paulo, Brazil
Offline
|
nuam sou bom com essa questao de modelagem nuam mas eu faria uma tabela só para respostas e na tebela que tem a pergunta teria apenas o ID da resposta selecionada!
|
Hudson Afonso
Consultor
http://penseinteligente.com.br/
Pense Inteligente:
A Inteligente é uma consultoria em tecnologia da informação, que atua na comercialização e implementação de produtos de software corporativos. Com foco no cliente, compreendemos a necessidade de nossos clientes e adicionamos valor para a condução de seus negócios.
Focus:
SPED, Saneamento de Cadastro, Saneamento de Dados, Cadastro de Clientes e Fornecedores, Cadastro da Receita Federal, CNPJ, CPF, Cadastro, Correção de Cadastro para o SPED, Exigências legais para o SPED, Cadastro CNPJ, Certidão CNPJ, Comprovante CPF, Consulta CPF, Consulta Serasa, Consulta SPC, Nota Fiscal Eletrônica, SPED Contábil, SPED Fiscal |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 13:23:35
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
faz assim
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 13:47:19
|
buthy
HelloWorld
Membro desde: 04/03/2010 07:36:49
Mensagens: 10
Offline
|
não sei se entendi ficaria assim então:  :S (ignorem a parte do som e imagem)
This message was edited 1 time. Last update was at 09/03/2010 13:55:22
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:03:26
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
nao!
ficaraia assim
Pergunta 1 - N Alternativas... ou seja, uma pergunta pode ter N alteranativas...
Pergunta pergunta = new Pergunta("Qual a cor do cavalo branco de napoleao?");
Alternativa alternativa1 = new Alternativa(pergunta,"Preto");
Alternativa alternativa2 = new Alternativa(pergunta,"Branco");
Alternativa alternativa3 = new Alternativa(pergunta,"Azul");
Alternativa alternativa4 = new Alternativa(pergunta,"Marrom");
Alternativa alternativa1 = new Alternativa(pergunta,"Lilais");
ou seja... 1 pergunta pode ter 109232138123201809 alterantivas...
para um baco relacional vc vai apontar em Alternativa, a qual pergunta ele pertence....
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:19:39
|
Zeed01
Virtual Machine Man
Membro desde: 27/10/2006 16:44:29
Mensagens: 667
Offline
|
Boa tarde Galera !
Eu faria uma tabela de perguntas e uma tabela de respostas, sendo que o relacionamento seria de 1:N, ou seja, 1 pergunta teria N respostas, nas tabelas você teria na tabela de respostas o id da pergunta correspondente.
Um dos campos da resposta indicaria se é a resposta correta.
Nas classes acho que seria algo assim:
Fiz o código direto aqui no post, então não deve ter erros aí de sintaxe.
Bom isso eu acho que resolveria.
[]s
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:32:14
|
buthy
HelloWorld
Membro desde: 04/03/2010 07:36:49
Mensagens: 10
Offline
|
a estrutura da questão seria assim:
Pergunta: Qual a cor do cavalo branco de napoleão?
opção a) roxo
opção b) azul
opção c) branco
opção d) vermelho
A tabela PERGUNTA está ok!
É só deixar o código e a pergunta. Certo?
E a tabela RESPOSTAS, não deveria o código, a opção certa, e três opções incorretas?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:39:12
|
Felagund
GUJ Master
![[Avatar]](/images/avatar/d8d855c465198499868fb2b566ebee8d.jpg)
Membro desde: 26/07/2006 11:51:36
Mensagens: 1732
Localização: Santa e Bela Catarina
Offline
|
a resposta é uma opção ou multipla?
se for uma é mais simples
se for varias respostas ficaria assim
|
att
Rafael Felix
Rolling With Code
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:41:11
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
e' um relacionamento 1 - N
ou seja....
1 PERUGNTA tem N ALTERNATIVAS
todas as alteranativas fica na tabela ALTERNATIVA
todas as perguntas na tabela PERGUNTA
............
vc pode tabem guardar o codigo da alternativa correta dentro da PERGUNTA....
falando em termos de tabela ficaria assim
.................
Se vc quer saber quanto a resposta de alguem vc faz...
ai depois vc faz..... Alguem -> Resposta
This message was edited 1 time. Last update was at 09/03/2010 14:42:48
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 14:48:17
|
fabiocsilva
Java Ninja
![[Avatar]](/images/avatar/2c75cf2681788adaca63aa95ae028b22.jpg)
Membro desde: 19/07/2006 18:53:36
Mensagens: 294
Offline
|
buthy, esse problema não é difícil de responder. Como é um exercício, recomendo que você faça sozinho pra treinar, ao invés de perguntar aqui no fórum. Você precisa treinar seu raciocínio porque esse tipo de problema é recorrente no mercado...
|
"The only place where success comes before work is in the dictionary."
_____________________
Sun Certified Java Programmer
Sun Certified Business Component Developer |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 15:08:17
|
Zeed01
Virtual Machine Man
Membro desde: 27/10/2006 16:44:29
Mensagens: 667
Offline
|
Boa tarde Galera !
Lavieri
Quando você diz que poderia guardar o codigo da alternativa correta na pergunta, quer dizer que na tabela Pergunta teria um "id_resposta_correta" ?
Fiquei confuso, porque na tabela Alternativa já não teria um "id_pergunta" para saber a qual pergunda determinada alternativa pertence ?
Seria algo assim:
TB_PERGUNTA
id_pergunda (PK)
id_alternativa_correta (FK de TB_ALTERNATIVA)
....
TB_ALTERNATIVA
id_alternativa (PK)
id_pergunta (FK da TB_PERGUNTA)
....
Me parece estranho na hora de persistir isso... quem vai existir primeiro ? O ovo ou a galinha ?
Na hora que você vai salvar a pergunta, vc tem que saber qual a alternativa correta para salvar em "id_alternativa_correta", mas na hora que você vai salvar a alternativa, você precisa da pergunta a que ela pertence...
A nãos que faça em duas etapas, crie perguntas, crie respostas e depois relacione...
Eu prefiro a opção:
TB_PERGUNTA
id_pergunta (PK)
....
TB_ALTERNATIVA
id_alternativa (PK)
id_pergunta (FK da TB_PERGUNTA)
alternativaCorreta ( True or False)
Além do que com essa modelagem é possível atender a necessidade de pergunta com multiplas escolhas...
[]s
This message was edited 1 time. Last update was at 09/03/2010 15:09:26
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 15:13:27
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
quem vai existir primeiro e' a pergunta.... segundo sao as alternativas, e terceiro a alternativa correta....
como falei, vc pode fazer, mas tera q cuida na hora de persitir
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 16:14:59
|
Zeed01
Virtual Machine Man
Membro desde: 27/10/2006 16:44:29
Mensagens: 667
Offline
|
Boa tarde Colegas !
Lavieri
Por favor, não leve a mal meu comentário, só queria entender como seria a solução que você sugeriu, acho interessantes analisar todas as opções...
Voltando a sua solução... nesse caso, para cadastrar uma pergunta, você teria que:
-Cadastrar a pergunta (sem a resposta correta)
-Cadastrar as respostas (inclusive a certa)
-Relacionar a pergunda com a resposta correta
É isso ?
[]s
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 16:34:33
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
yep!
that is the way
existe outra alternativa....
mas nessa outra alternativa, mas nesta outra vc abre espaco para multiplas respostas, e se essa for uma intencao sua, entao sem problemas... essa segunda alternativa seria...
ai nesse caso, vc pode acabar tendo em uma pergunta mais de uma resposta correta ...
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/03/2010 17:07:45
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
Lavieri wrote:yep!
Obs.: se usar hibernate da pra fazer melhor...
so colocar insertable false, na propriedade setAlternativa...
e entao vc nao precisa esperar o add pra setar ela
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
|
|