[firebase-br] duvida

Pedro henrique ropelula em gmail.com
Seg Mar 3 15:38:31 -03 2008


valeu amigo! tirou minhas duvidas

tipo eu uso na verdade é o omponente ado

tipo, nao sei se é o correto, mas uso adoquery, data source, e o
datasetconection apenas

e quando fazia transaçoes, fazia no modo comun, nao utilizava sql nao, ja
suspeitava disto

eu fazia no modo
adotable1.edit;
adotal1campo.value:=adotable1campo.value+1; por exemplo. e as vezes tinha
este problema,
adotable1.post;

nao frequente mas de vez em quando.
principalemtente quando havia duas mauinas em rede rodando ao mesmo tempo,
ai sim isto pegava, mas hoje ja aprendi muita coisa!!
valeu mesmo irmao, vou da ruma olhada nisto agora
abração





Em 03/03/08, Eduardo Pelizzari de Andrade <eduardoandrade em persoft.com.br>
escreveu:
>
> Oi Pedro,
>
> Estes problemas que você está apresentando são problemas de
> concorrência. Você precisa prever isto na programação, por exemplo, a
> seguinte tabela:
>
> create tabe agenda(
> id integer not null,
> nome varchar(50),
> telefone varchar(10),
> primary key (id))
>
> Ai você tem os seguintes dados:
>
> id nome telefone
> 1 "Zé" 1111-1111
> 2 "Mané" 2222-2222
> 3 "José" 3333-3333
> 4 "Josué" 4444-4444
>
> Se você quiser trocar o telefone do registro "2" para 6666-6666, você
> teria três maneiras de alterar ou excluir os dados:
>
> 1º Verificando somente a chave primária:
>
> update agenda set telefone = '6666-6666'
> where id = 2
>
> Neste caso a atualização só falha se o registro for excluído;
>
> 2º Verificando somente a chave primária e o campo que está sendo alterado:
>
> update agenda set telefone = '6666-6666'
> where id = 2
> and telefone = '2222-2222'
>
> Neste caso a atualização falha se o registro for excluído ou o telefone
> for alterado. Se no momento da alteração na estação, uma outra estação
> alterou o telefone e ele não for mais '222-2222', seu update falha.
>
> 3º Verficando todo o registro:
>
> update agenda set telefone = '6666-6666'
> where id = 2
> and telefone = '2222-2222'
> and nome= 'Mané'
>
> Neste caso no momento que alteração for ser executada, se o registro
> possuir qualquer diferença ele irá falhar na atualização;.
>
> Pela sua dúvida, acho que você deve usar um componente de acesso via
> dataset, como os dos Delphi, do php, java, asp etc.
>
> Estes componentes resolvem o update para você, ou seja, você dá um
> comando para buscar o registro, e na hora de salvar ele gera os updates
> da maneira que coloquei para você. Geralmente nestes componentes existem
> parâmetros para definir quais dos três updates será aplicado, no Delphi
> por exemplo, vários componentes possuem a propriedade UpdateMode, onde
> você define isso. No ODBC, quando abrimos a query definimos como será
> feito o update.
>
> É legal você fazer uma pesquisa mais profunda, este assunto é importante
> e estes problemas que você tem no mysql você terá em qualquer banco de
> dados, se não dominar isso.
>
> Pedro henrique escreveu:
> > as atualizaçoes que falei
> > é que no mysql, sempre tive problema, com algumas mensagem que dava
> >
> > tipo a linha nao pode ser encontrada para atualização ou os dados nela
> > foram alterados recentemente, nao é possivel efetuar alteração
> >
> > estas coisas
> >
> >
> > da isto direto, por isto que to migrando pro firebird
> >
> >
> > ------------------------------------------------------------------------
> >
> > No virus found in this incoming message.
> > Checked by AVG Free Edition.
> > Version: 7.5.516 / Virus Database: 269.21.3/1307 - Release Date:
> 02/03/2008 15:59
> >
>
> --
> Eduardo Pelizzari de Andrade
> Persoft Softwares Aplicativos
> Fone: 55 11 62218061
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista