bvinicius:
Boa noite a todos,
Galera estou com uma dúvida sobre um insert em tabelas, é o seguinte:
Tenho uma tabela Cliente com seus campos básicos(cod_cli,cpf…) e uma tabela cidade(cod_cid,nome,est_cod) e uma tabela estado (cod_est , nome, uf)
Então a tabela cidade recebe o código do estado como chave estrangeira… até ai ok, mas a minha dúvida é a seguinte parte ao fazer o cadastro de um cliente.
Vou fazer o insert dos campos dels normal , ai ele recebe o campo cod da tabela cidade como FK, mas para a tela de cadastro não posso fazer o usuario fazer esse cadastro adicionando o cod da cidade e sim adicionar o nome dela e estado, como faço essa associação no insert para que insira o cod da cidade na tabela, alguém sabe me explicar?
Agradeço desde já.
OBS: Talvez tenha ficado um pouco confuso, posso fornecer mais algumas informações.
vinicius, há 3 maneiras de se fazer isso
não sei se sua APP é desktop ou web mas o conceito serve para as duas:
1° maneira -> usuário coloca o CEP, e no momento que ele sai do campo de texto, seu sistema faz uma busca no BD e preenche Estado/Cidade/Rua e o usuário digita o numero da casa. (esta tabela de Estado/Cidade/Rua você encontra o script no site do correio, com todas as ruas ja cadastradas)
2° maneira -> todos os comboBox possuem value/texto, quando for preencher o combo você coloca o cod_est no value, e a Descrição no texto.
seu sistema terá 2 combos se for Nacional:
[Estado+] ai abrir a tela seu sistema faz uma consulta por todos os estados. quando o usuário “selecionar” um estado, seu sistema irá preencher o combo Cidade com todas as cidades que possuem o cod_est igual ao estado selecionado.
[Cidade+] usuário seleciona a cidade.
[Logradouro]terá um campo rua ou logradouro, onde o usuário irá digitar o logradouro dele.
[numero] número da casa.
quando o usuário terminar você terá estes dados: cod_est,cod_cid, Logradouro,numero, você pega essas informações e insere em uma tabela no Bd chamada Estado(cod,cli,est_cod,cod_cid,logradouro,numero)
3° maneira -> sem relacionamento algum: usuário digita tudo na mão sem auxilio de ComboBoxes e tudo vai para uma tabela Estado(cod_cli,Estado,Cidade,Logradouro,Numero)
dicas:
a 1° Opção é usada quando o usuário esta no cadastro dele.
a 2° Opção é usada quando o usuário fazendo alguma busca seja por pessoas, produtos, onde ele poderia especificar qual amplo seria sua busca
a 3° Opção são em casos muitos especificos, ou sistemas mais simples.