Relacionamento 1 :1

Delphi

Banco de Dados

22/07/2017

Bom Dia, Assim , estou começando a desenvolver um sistema agora, sou novo , experiencia que eu tenho com sistema e , trabalhando a uns 2 anos com suporte externo e interno em sistema comercial, Não tive muito contado direto com a programação , o único contato que eu tive direto com a programação foi na faculdade, e agora eu decidi começar a desenvolver um sistema, comercial, como sou novo surgira muitas duvidas, e gostaria de contar com ajuda de todos nesse fórum, então minha primeira duvida e a seguinte: Eu tenho uma Tabela Pessoas, Pessoas_endereço : Com o seguintes atributos que segue a baixo:

Pessoas: ID_PESSOAS, FL_ENTIDADE, NM_NOME, NM_FANTASIA, NR_DOCUMENTO, NR_IE_IG, FL_ATIVO (TABELA PAI)
Pessoas_endereço: ID_PESSOAS , ID_TP_ENDERECO, NM_LOGRADOURO, NM_NUMERO, NM_BAIRRO, NR_CEP, NM_COMPLEMENTO, ID_MUNICIPIO (TABELA FILHO)

Então essas são minhas duas tabelas, eu quero realizar o seguinte procedimento , no delphi criei um form , com os dados da tabela pessoas, e tenho uma aba que coloquei os dados da tabela pessoas_endereço, e vai acontecer da seguinte maneira, meu cliente vai colocar os dados NM_NOME, NM_FANTAISE, ETC.. E O ID_PESSOAS VAI GERAR AUTOMATICAMENTE , E NA ABA ENDEREÇO , ele vai preencher TIPO_ENDEREÇO , NM_LOGRADOURO, ETC... E QUANDO ELE TER UM salvar eu quero que na table pessoas_endereço fique gravado ID_PESSOAS o msm ID_PESSOAS Que a tabela PESSOAS gerou , só que não estou conseguindo , alguém poderia me dar alguma dica como posso realizar esse procedimento? (EU ACREDITO QUE ISSO SE CHAMA RELACIONAMENTO 1:1, mas nao sei como implanterei isso no meu form no delphi )

Não sei se fui muito claro com minha pergunta , mas se não fui podem perguntar que tentarei ser mais claro.

Obrigado estou no aguardo de alguma ajuda.
Diego

Diego

Curtidas 0

Respostas

Gabriel Baltazar

Gabriel Baltazar

22/07/2017

Seu ID_PESSOA é auto_incremento? Como você seta esse valor pra gravar em Pessoa?
Você pode colocar no BeforePost do Table de Endereço o seguinte.

TableEndereco.FieldByName('ID_PESSOAS').Value := TablePessoa.FieldByName('ID_PESSOAS').Value;


OBS.: Normalmente usamos os nomes das tabelas do Banco no singular
GOSTEI 0
Everton Santos

Everton Santos

22/07/2017

qual componente vc esta usando pra ler as tabelas se for clientdataset fica facil
GOSTEI 0
POSTAR