[firebase-br] Record Version (TRANSACTION) Problemas no IBX

Exclaim Tecnologia exclaimtecnologia em yahoo.com.br
Sex Ago 26 21:46:42 -03 2005


E ai Pha, blz?
Cara e seu eu te falar que a tabela de pedido nao ta alterando o registro 
vc acredita? Eu tmbm nao acreditei, ai fiz o seguinte, criei uma nova tabela

create table tabtesteproduto
(codigo integer not null,
produto integer references tabproduto(codigo),
primary KEY(CODIGO)
);
COMMIT

E em outro executavel executei o Sql abaixo de insercao de um novo registro, 
usando o produto 1, o mesmo
que foi alterado na entrada de mercadorias:

insert into tabtesteproduto(codigo,produto) values (1,1)'

Ou seja, apenas tentei inserir este produto em uma outra tabela, e ele deu o 
erro de lock conflict.

Nao sei o que fazer!!!

Valew pela ajuda!!




----- Original Message ----- 
From: "Pha (TeamFB)" <lista em pha.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, August 26, 2005 3:51 PM
Subject: Re: [firebase-br] Record Version (TRANSACTION) Problemas no IBX


> Voce ou alguma trigger, ou algum procedimento esta tetando executar um 
> update, no registro que voce alterou.
>
> Com este tipo de transacao voce pode ler normalmente o registro mais nao 
> pode alterar, voce deve estar tentando editar em algum lugar.
>
> Nenhuma transação em nenhum banco (pelo menos que eu conheca) permite que 
> se altere um registro que esta sendo alterado, antes devemos finalizar a 
> transacao.
>
> PHA
> Nova Odessa / SP - Brazil
> Membro do TeamFB (FireBase)
>
> -----Mensagem original-----
> From: "Exclaim Tecnologia" exclaimtecnologia em yahoo.com.br
> Date: Fri, 26 Aug 2005 15:28:46 -0300
> To: "Lista Firebase" lista em firebase.com.br
> Subject: [firebase-br] Record Version (TRANSACTION) Problemas no IBX
>
>> E ai amigos da Comunidades, estou para ficar louco com transações no
>> interbase, estudei varios artigos e sempre usei o nivel de isolamento 
>> read
>> committed (ler apenas os dados gravados)  o componente transaction da
>> palheta ibx ta configurado
>> como
>> read_committed
>> rec_version
>> nowait
>>
>> Exemplo, eu dou entrada no estoque no produto 1 sem commitar, o campo
>> Estoque é incrementado, se alguem tenta inserir o produto 1 em um pedido
>> (somente inserir, chave estrangeira) ele da erro : "lock conflict on no 
>> wait
>> transaction", estudei o erro e vi que me referia ao nowait, ou seja ele 
>> nao
>> espera, tentei passar para wait ai ele fica travado ate que um commit ou
>> rollback seja dado na entrada do estoque, gostaria de fazer assim: mesmo 
>> que
>> ele tenha alterado o estoque sem dar commit, eu consiga inserir esse 
>> produto
>> no pedido normalmente considerando a ultima atualização commitada ou 
>> seja,
>> se antes o estoque estava com 15 e nessa entrada sem commit ele foi para 
>> 18,
>> nao interessa, o 15 que devera ser lido sem dar erro, li algo sobre usar
>> read_committed e rec_version, assim ele nao daria o erro nem precisaria 
>> usar
>> o wait ou  nowait, mas nao deu certo, tirando apenas o nowait dos 
>> parametros
>> ele assume como wait. Alguem poderia me ajudar?
>>
>> OBS: ja li artigos da comunidade firebird de lingua portugues, firebase, 
>> ja
>> busquei informacoes em outras posts mas nao consegui nada que me 
>> ajudasse.
>>
>>
>>
>>
>>
>> _______________________________________________________
>> Yahoo! Acesso Grátis - Internet rápida e grátis.
>> Instale o discador agora! http://br.acesso.yahoo.com/
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa 


	
	
		
_______________________________________________________ 
Yahoo! Acesso Grátis - Internet rápida e grátis. 
Instale o discador agora! http://br.acesso.yahoo.com/





Mais detalhes sobre a lista de discussão lista