[Dúvida] Relacionamento entre tabelas
Olá amigos,
Sou novato em criação de banco de dados e estou precisando da ajuda de vocês para tirar umas dúvidas.
Bom, estou criando um banco com apenas duas tabelas. Veja imagem abaixo:
http://img43.imageshack.us/img43/2594/0ynm.jpg
Em tudo que li na net e vídeos de alguns cursos que estou estudando, vi que o campo código é o campo mais certo para se criar o relacionamento.
Porém não é o campo que eu gostaria de utilizar em meu projeto. Gostaria que o relacionamento fosse o campo PA_NOME e mostrasse de forma automática a imagem da bandeira.
Quero por um ComboBox onde a pessoa poderá selecionar o nome do País e ao selecionar um nome, automaticamente a imagem da sua bandeira será mostrada no campo image. Veja abaixo:
http://img716.imageshack.us/img716/4265/7y6b.jpg
Então minha dúvida é essa: Ao invés de por o campo PA_CODIGO como meu relacionamento posso por o campo PA_NOME?
Tentei deixar bem explicado espero que possam me ajudar! Sim? Não? Que problemas posso ter?
Obrigado à Todos!
Sou novato em criação de banco de dados e estou precisando da ajuda de vocês para tirar umas dúvidas.
Bom, estou criando um banco com apenas duas tabelas. Veja imagem abaixo:
http://img43.imageshack.us/img43/2594/0ynm.jpg
Em tudo que li na net e vídeos de alguns cursos que estou estudando, vi que o campo código é o campo mais certo para se criar o relacionamento.
Porém não é o campo que eu gostaria de utilizar em meu projeto. Gostaria que o relacionamento fosse o campo PA_NOME e mostrasse de forma automática a imagem da bandeira.
Quero por um ComboBox onde a pessoa poderá selecionar o nome do País e ao selecionar um nome, automaticamente a imagem da sua bandeira será mostrada no campo image. Veja abaixo:
http://img716.imageshack.us/img716/4265/7y6b.jpg
Então minha dúvida é essa: Ao invés de por o campo PA_CODIGO como meu relacionamento posso por o campo PA_NOME?
Tentei deixar bem explicado espero que possam me ajudar! Sim? Não? Que problemas posso ter?
Obrigado à Todos!
Jore Maximus
Curtidas 0
Respostas
Alex Lekao
18/10/2013
Ola Jore, boa tarde!!!
Eu nao entendi muito bem, mas o relacionamento pode ser feito com qqr campo, o unico pronto eh se ele for repetido na segunda tabela por exemplo.
acredito que vc possa tomar apenas esse cuidado.
e nao tem necessidade de serem chaves primarias, nem nada disso, pode ser um campo qqr que faca referencia de um e outro.
acredito que se alguem mais comentar e colocar suas opiniões podera ajudar ainda mais.
Eu nao entendi muito bem, mas o relacionamento pode ser feito com qqr campo, o unico pronto eh se ele for repetido na segunda tabela por exemplo.
acredito que vc possa tomar apenas esse cuidado.
e nao tem necessidade de serem chaves primarias, nem nada disso, pode ser um campo qqr que faca referencia de um e outro.
acredito que se alguem mais comentar e colocar suas opiniões podera ajudar ainda mais.
GOSTEI 0
Jore Maximus
18/10/2013
Obrigado por sua ajuda Alex - Lekao,
desculpe se ficou meio confuso é que o forum não aceita imagens e edição... então fica mais difícil me explicar!
Não entendi esta sua colocação:
[url]http://img43.imageshack.us/img43/2594/0ynm.jpg[/url]
Para diferenciar uma tabela da outra eu coloquei assim:
TABELA_ITENS
IT_CODIGO
IT_NOME
IT_ANO
IT_IMG
IT_OBSERVACAO
PA_NOME (Este é o campo que eu gostaria que fosse o meu relacionamento de 1 :N ou seja um pais terá muitos itens)
A outra tabela esta assim:
TABELA_PAIS
PA_CODIGO
PA_NOME
PA_IMGBAND
Se tiver mais dicas para me ajudar a entender pode mandar e ficarei muito agradecido!
Um abraço!
desculpe se ficou meio confuso é que o forum não aceita imagens e edição... então fica mais difícil me explicar!
Não entendi esta sua colocação:
o unico pronto eh se ele for repetido na segunda tabela por exemplo.
acredito que vc possa tomar apenas esse cuidado.
acredito que vc possa tomar apenas esse cuidado.
[url]http://img43.imageshack.us/img43/2594/0ynm.jpg[/url]
Para diferenciar uma tabela da outra eu coloquei assim:
TABELA_ITENS
IT_CODIGO
IT_NOME
IT_ANO
IT_IMG
IT_OBSERVACAO
PA_NOME (Este é o campo que eu gostaria que fosse o meu relacionamento de 1 :N ou seja um pais terá muitos itens)
A outra tabela esta assim:
TABELA_PAIS
PA_CODIGO
PA_NOME
PA_IMGBAND
Se tiver mais dicas para me ajudar a entender pode mandar e ficarei muito agradecido!
Um abraço!
GOSTEI 0
Alex Lekao
18/10/2013
Ola Jore,
Acredito que eu me expressei mal.
O Que eu estava querendo dizer eh que vc pode usar qualquer campo para relacionamento entre as tabelas, o que pode acontecer eh que se vc usar um campo numerico para relacionar com um campo char, vc tera que converte-lo antes, estas coisas.
mas os campos sendo do mesmo tipo, podera utilizar qqr um, desde que sejam em tese o mesmo conteudo, ou que um deles componham parte do conteudo, ai tera que fazer acertos para que fiquem iguais.
no caso que diz dizer da repeticao eh jutamente 1 para N, na primeira tabela vc tem um registro que aponta para N registros na segunda tabela, e vc quer ver as fotos, neste caso, se nao houver problema as repeticoes, PA_CODIGO, PA_NOME, por exemplo aparecerem mais de uma vez, nao tera problemas.
se for um select comum ele ira repetir os informacoes da primeira tabela para cada repeticao da segunda(nao montei scripts nem nada disso, entao eh apenas especulacao, rssrsrs)... agora se estiver em uma aplicacao ai vc limita ao grid e a exibicao da foto da bandeira como mencionou, direto no banco usando o IBEXpert por exemplo, acredito que nao vera as imagens, so aparecera BLOB no campo, se nao me falha a memoria.
nao sei se expliquei melhor agora.
nao mexe muito com Firebird, faz um certo tempo ja que nao uso, mas acho que eh isso ai.
Espero ter ajudado.
Abraco.
Alex - Lekao
Acredito que eu me expressei mal.
O Que eu estava querendo dizer eh que vc pode usar qualquer campo para relacionamento entre as tabelas, o que pode acontecer eh que se vc usar um campo numerico para relacionar com um campo char, vc tera que converte-lo antes, estas coisas.
mas os campos sendo do mesmo tipo, podera utilizar qqr um, desde que sejam em tese o mesmo conteudo, ou que um deles componham parte do conteudo, ai tera que fazer acertos para que fiquem iguais.
no caso que diz dizer da repeticao eh jutamente 1 para N, na primeira tabela vc tem um registro que aponta para N registros na segunda tabela, e vc quer ver as fotos, neste caso, se nao houver problema as repeticoes, PA_CODIGO, PA_NOME, por exemplo aparecerem mais de uma vez, nao tera problemas.
se for um select comum ele ira repetir os informacoes da primeira tabela para cada repeticao da segunda(nao montei scripts nem nada disso, entao eh apenas especulacao, rssrsrs)... agora se estiver em uma aplicacao ai vc limita ao grid e a exibicao da foto da bandeira como mencionou, direto no banco usando o IBEXpert por exemplo, acredito que nao vera as imagens, so aparecera BLOB no campo, se nao me falha a memoria.
nao sei se expliquei melhor agora.
nao mexe muito com Firebird, faz um certo tempo ja que nao uso, mas acho que eh isso ai.
Espero ter ajudado.
Abraco.
Alex - Lekao
GOSTEI 0
Jore Maximus
18/10/2013
Ficou excelente! rs rs
acho que vou criar uma relacionamento do campo PA_NOME e vou fazer uns testes para ver se da algum erro.
Muito obrigado !
acho que vou criar uma relacionamento do campo PA_NOME e vou fazer uns testes para ver se da algum erro.
Muito obrigado !
GOSTEI 0
Alex Lekao
18/10/2013
Disponha.
Precisando eh so falar.
Precisando eh so falar.
GOSTEI 0