Re: [delphi-br] ADO+Access+Transação (Sufoco)

2006-06-08 Por tôpico joao . santana
Olá Danilo, não estou usando arquivo UDL e defino a conexão na aplicação da 
seguinte forma:
=
// Conexoão com o banco SIGABD.MDB
  try
DMDados.ADOConnection1.Connected:=false;
DMDados.ADOConnection1.ConnectionString:=
'Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;'+
' Data Source='+CaminhoDoSIGABD+';Mode=Read|Write;Extended Properties=;'+
' Locale Identifier=1033;Jet OLEDB:System database=;'+
' Jet OLEDB:Registry Path=; Jet OLEDB:Database Password=;'+
' Jet OLEDB:Engine Type=4;Jet OLEDB:Database Locking Mode=0;'+
' Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk 
Transactions=1;'+
' Jet OLEDB:New Database Password=;Jet OLEDB:Create System 
Database=False;'+
' Jet OLEDB:Encrypt Database=False;'+
' Jet OLEDB:Don''t Copy Locale on Compact=False;'+
' Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False';
DMDados.ADOConnection1.KeepConnection:=true;
DMDados.ADOConnection1.Connected:=true;
  except
showmessage('Erro na conexão com o banco SIGABD.MDB');
sysutils.abort;
  end;

=

Obrigado




-Mensagem Original-
From: Danilo Valente [EMAIL PROTECTED]
Date: Wed, 07 Jun 2006 18:31:28 -0300
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] ADO+Access+Transação (Sufoco)

 No arquivo UDL de conexão com o banco de dados Access que você está usando na 
 ADOConnection, como está a configuração na aba Avançadas?
 
 Danilo Valente
   - Original Message - 
   From: joao.santana 
   To: delphi-br@yahoogrupos.com.br 
   Sent: Wednesday, June 07, 2006 1:54 PM
   Subject: [delphi-br] ADO+Access+Transação (Sufoco)
 
 
   Estou desenvolvendo um aplicação multiusuário usando ADO + ACCESS + Delphi 
 7 com uso de transação e Componente TQuery. Acontece que esta dando erro pelo 
 fato de um usuário esta bloqueando o outro e impedindo de gravar uma 
 determinada tabela. E o seguinte:
   - Tenho a tabela A que relaciona com a tabela B
   - Tenho a tabela B  que relaciona com a tabela C.
 
   Então faço os seguintes passos:
   - O usuário clica para gravar a tabela A;
   - Abro a transação; 
   - Gravo a tabela A;
   - Vou para outra tela onde vou lançar varios registros nas tabelas B e C;
   - Se der tudo certo, faço Commit, senão faço Rollback;
   OBS: Do momento em que abro a transação ate dar Commit pode demorar ficando 
 a transação ficar aberta por muito tempo, e se algum outro usuário tentar 
 gravar alguma coisa  da erro dizendo que está bloqueado por outro usuário.
 
   Como eu precisava ter a opção de desistir de gravar tudo, optei por usar 
 transação.
 
   DÚVIDAS: 
   Esta é a forma correta de se usar transação?
   O banco Access suporta transação?
   Preciso de uma alternativa que me permita desistir das inclusões e 
 alterações feitas, tem outra solução? 
 
   Desde já agradeço.
 
   João Jés
 
 
 

 
 [As partes desta mensagem que não continham texto foram removidas]
 
 
 
 
 
 -- 
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 
 
 
  
 Links do Yahoo! Grupos
 
 
 
 
  
 
 
 





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [delphi-br] ADO+Access+Transação (Sufoco)

2006-06-08 Por tôpico joao . santana
Com este procedimento de setar a propriedade da ADOQuery eu não precisaria usar 
transação. É isto??

-Mensagem Original-
From: Gabriel Filho [EMAIL PROTECTED]
Date: Thu, 08 Jun 2006 08:04:16 -0300
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] ADO+Access+Transação (Sufoco)

 Set a propriedade locktype para ltBatchOptimistic, nesse modo, tudo que é
 feito na ADOquery fica armazenado na memória, e só é gravado no banco se vc
 usar ADOQuery..UpdateBatch.
 
 Mas tem um porém, vc não consegue retornar o auto incremento qdo usa esse
 modo.
 
 
 espero ter ajudado.
 
 Em 07/06/06, Danilo Valente [EMAIL PROTECTED] escreveu:
 
  No arquivo UDL de conexão com o banco de dados Access que você está usando
  na ADOConnection, como está a configuração na aba Avançadas?
 
  Danilo Valente
 
- Original Message -
From: joao.santana
To: delphi-br@yahoogrupos.com.br
Sent: Wednesday, June 07, 2006 1:54 PM
Subject: [delphi-br] ADO+Access+Transação (Sufoco)
 
 
Estou desenvolvendo um aplicação multiusuário usando ADO + ACCESS +
  Delphi 7 com uso de transação e Componente TQuery. Acontece que esta dando
  erro pelo fato de um usuário esta bloqueando o outro e impedindo de gravar
  uma determinada tabela. E o seguinte:
- Tenho a tabela A que relaciona com a tabela B
- Tenho a tabela B  que relaciona com a tabela C.
 
Então faço os seguintes passos:
- O usuário clica para gravar a tabela A;
- Abro a transação;
- Gravo a tabela A;
- Vou para outra tela onde vou lançar varios registros nas tabelas B e
  C;
- Se der tudo certo, faço Commit, senão faço Rollback;
OBS: Do momento em que abro a transação ate dar Commit pode demorar
  ficando a transação ficar aberta por muito tempo, e se algum outro usuário
  tentar gravar alguma coisa  da erro dizendo que está bloqueado por outro
  usuário.
 
Como eu precisava ter a opção de desistir de gravar tudo, optei por usar
  transação.
 
DÚVIDAS:
Esta é a forma correta de se usar transação?
O banco Access suporta transação?
Preciso de uma alternativa que me permita desistir das inclusões e
  alterações feitas, tem outra solução?
 
Desde já agradeço.
 
João Jés
 
 
 
 
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 
 
  
 
 
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 
 
 -- 
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 
 
 
  
 Links do Yahoo! Grupos
 
 
 
 
  
 
 
 
 





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




[delphi-br] ADO+Access+Transação (Sufoco)

2006-06-07 Por tôpico joao . santana
Estou desenvolvendo um aplicação multiusuário usando ADO + ACCESS + Delphi 7 
com uso de transação e Componente TQuery. Acontece que esta dando erro pelo 
fato de um usuário esta bloqueando o outro e impedindo de gravar uma 
determinada tabela. E o seguinte:
- Tenho a tabela “A” que relaciona com a tabela “B”
- Tenho a tabela “B”  que relaciona com a tabela “C”.

Então faço os seguintes passos:
- O usuário clica para gravar a tabela A;
- Abro a transação; 
- Gravo a tabela A;
- Vou para outra tela onde vou lançar varios registros nas tabelas B e C;
- Se der tudo certo, faço Commit, senão faço Rollback;
OBS: Do momento em que abro a transação ate dar Commit pode demorar ficando a 
transação ficar aberta por muito tempo, e se algum outro usuário tentar gravar 
alguma coisa  da erro dizendo que está bloqueado por outro usuário.

Como eu precisava ter a opção de desistir de gravar tudo, optei por usar 
transação.

DÚVIDAS: 
Esta é a forma correta de se usar transação?
O banco Access suporta transação?
Preciso de uma alternativa que me permita desistir das inclusões e alterações 
feitas, tem outra solução? 

Desde já agradeço.

João Jés





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html