Edvaldo Rodrigues Postado Abril 20, 2007 Denunciar Share Postado Abril 20, 2007 pessoal, sou novo aqui, novo tambem no "mundo do delphi", já começou a surgir algumas duvidas como:como salvar em um banco inter base....venho tentando: CLIENTES.tclientesTIPO_PES.VALUE := CBOTIPOPES.TEXT; dmClientes.tclientesTIPO_CLI.Value := CBOTIPOCLI.TEXT; dmClientes.tclientesNOME_RAZAO.Value := TXTNOMERAZAO.TEXT; dmClientes.tclientesAPELIDO_FANTAZIA.Value := TXTAPELIDOFANTASIA.TEXT; dmClientes.tclientesDOC_ESTADUAL.Value := TXTDOCESTADUAL.TEXT; dmClientes.tclientesDOC_FEDERAL.Value := TXTDOCFEDERAL.TEXT; dmClientes.tclientesENDERECO.Value := TXTENDERECO.TEXT; dmClientes.tclientesBAIRRO.Value := TXTBAIRRO.TEXT; dmClientes.tclientesCEP.Value := TXTCEP.TEXT; dmClientes.tclientesOBSERVACAO.Value := TXTOBSERVACAO.TEXT; //dmClientes.tclientesDATA_CAD.VALUE := TXTDATACADASTRO.TEXT; dmClientes.tclientesFONE.Value := txtfone.TEXT; dmClientes.tclientesCELULAR.Value := txtcelular.TEXT; dmClientes.tclientes.INSERT;onde dmClientes é meu data modulo;e tclientes é minha tabela;tem um modo mais prático de resolver isso???obrigado desde já.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Abril 21, 2007 Denunciar Share Postado Abril 21, 2007 pessoal, sou novo aqui, novo tambem no "mundo do delphi", já começou a surgir algumas duvidas como:como salvar em um banco inter base....venho tentando: CLIENTES.tclientesTIPO_PES.VALUE := CBOTIPOPES.TEXT; dmClientes.tclientesTIPO_CLI.Value := CBOTIPOCLI.TEXT; dmClientes.tclientesNOME_RAZAO.Value := TXTNOMERAZAO.TEXT; dmClientes.tclientesAPELIDO_FANTAZIA.Value := TXTAPELIDOFANTASIA.TEXT; dmClientes.tclientesDOC_ESTADUAL.Value := TXTDOCESTADUAL.TEXT; dmClientes.tclientesDOC_FEDERAL.Value := TXTDOCFEDERAL.TEXT; dmClientes.tclientesENDERECO.Value := TXTENDERECO.TEXT; dmClientes.tclientesBAIRRO.Value := TXTBAIRRO.TEXT; dmClientes.tclientesCEP.Value := TXTCEP.TEXT; dmClientes.tclientesOBSERVACAO.Value := TXTOBSERVACAO.TEXT; //dmClientes.tclientesDATA_CAD.VALUE := TXTDATACADASTRO.TEXT; dmClientes.tclientesFONE.Value := txtfone.TEXT; dmClientes.tclientesCELULAR.Value := txtcelular.TEXT; dmClientes.tclientes.INSERT; onde dmClientes é meu data modulo; e tclientes é minha tabela;Edvaldo Rodrigues, você começou seu texto com um "venho tentando..." o que sugere que ainda não conseguiu, certo?! Se é isto mesmo, e pelo código parece ser, observe que você primeiro deve utilizar um INSERT ou APPEND para que tenha um buffer novinho para preencher antes de gravar. Assim, note que você colocou o INSERT como último comando, enquanto deveria ser o primeiro. Bom, mas com isso você apenas criou um novo registro (em memória), mas ainda não estará gravado no banco. Para isso, você terá que após inicializados "todos" os campos da tabela, ou seja no final, executar a gravação dos mesmos utilizando o método POST (no seu caso dmClientes.tclientes.Post) - se não hover qualquer erro, você terá efetivamente gravado suas informações. tem um modo mais prático de resolver isso???Com certeza! Ao que parece você optou pelo modo mais "complicado" para começar a aprender a acessar banco de dados com Delphi. Existe na paleta Data Controls vários componentes que são facilmente ligados aos dataset's (queries e tables - você não citou o que está utilizando), utilizando um componente TDataSource (paleta Data Access). Funciona mais ou menos assim: no seu form você coloca os labes e componentes TDBEdit (similares aos TEdit's que você utilizou); então, para ligar estes componentes (chamadas dataware) ao seu dataset você deve adicionar um componente TDataSource no form ou no datamodule (recomendo este último) e em sua propriedade DataSet, selecionar o dataset desejado (no seu exemplo seria tclientes); agora, voltando ao componente dataware, em nosso caso os TDBEdit's, na propriedade DataSource você seleciona o respectivo componente ao qual ligamos tclientes e na propriedade DataField você seleciona o nome do campo que deve ser editado. Com isto, o que você precisará é executar comandos como Insert ou Edit ao entrar no form de edição e ao sair ter um meio de executar o Post - normalmente um botão Gravar ou algo parecido. Se você utilizar um TDBNavigator, daí então é que não vai ter que fazer nada disso - mas não é o usual, então vale aprender do modo um pouco mais "complicado", mas nem tanto quanto o que você colocou. Dê uma espiada neste meu post (apesar de ser com Paradox), talvez possa lhe servir. Tem também um outro exemplo com um método diferente do anterior que você pode acessar o link neste post Baixe os exemplos e dê uma olhada na "cara" deles. Convém você dar uma lida em algum livro ou apostila sobre o assunto. Outra coisa, já que você está começando, acho conveniente que se habitue a utilizar os termos como são. Quando você colocou "onde dmClientes é meu data modulo;", o termo é Datamodule; Também é possível minimizar digitação em casos como o que você repetiu o "dmClientes." para cada campo manipulado. Em casos com este, você faz uso do With <class ou record> Do (algo como "Com <class ou record> Faça"): with dmClientes do begin ... tclientesTIPO_CLI.Value := CBOTIPOCLI.TEXT; tclientesNOME_RAZAO.Value := TXTNOMERAZAO.TEXT; ... end;Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Edvaldo Rodrigues
pessoal, sou novo aqui, novo tambem no "mundo do delphi", já começou a surgir algumas duvidas como:
como salvar em um banco inter base....
venho tentando:
onde dmClientes é meu data modulo;
e tclientes é minha tabela;
tem um modo mais prático de resolver isso???
obrigado desde já....
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.