Se fosse uma simples questão de logica, não seria possivel dar um alter table 
nessa tabela para inserir uma chave primaria.
E isso é possivel, ja testei.

ou ainda.... nao seria possivel apos 3 inserts, enxergar os registros num 
select antes do commit. E ja testei isso... funciona.

Nao é pra isso q serve transacao?
Creio eu.

[]s
  ----- Original Message ----- 
  From: Fellipe Henrique 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, July 31, 2006 10:58 AM
  Subject: Re: [delphi-br] Mistério CONTINUA na Transação com FB.


  Como eu disse, eu acho que é assim... e o sistema de transacao dele nao eh
  assim tao porcaria.. pois se fosse os novas versoes do tao aclamado oracle e
  SQL Server nao teriam copiado ele.. hehe.. eh apenas uma questao de logica..
  nao se pode incluir um registro em uma tabela q nao tenha sido criada...

  []s

  Em 31/07/06, José Otavio DTI <[EMAIL PROTECTED]> escreveu:
  >
  > Bom... se for isso, o esquema de transacao do IB é uma porcaria!
  > Valeu Felipe.
  >
  > Alguem mais pode me ajudar?
  >
  >   ----- Original Message -----
  >   From: Fellipe Henrique
  >   To: delphi-br@yahoogrupos.com.br
  >   Sent: Monday, July 31, 2006 10:25 AM
  >   Subject: Re: [delphi-br] Mistério CONTINUA na Transação com FB.
  >
  >
  >   amigo, eu acho, que vc nao pode mexer em tabelas e tals, sendo q ele
  > ainda
  >   nao foi criada... o jeito certo, e vc comitar os create tables, depois
  >   starta outra transacao para fazer as suas verificacoes e tals..
  >
  >   Em 31/07/06, José Otavio DTI <[EMAIL PROTECTED]>
  > escreveu:
  >   >
  >   > Eu sei q isso funciona
  >   > Mas eu pergunto agora.... pra que serve essa droga de processo com
  >   > transacoes se eu nao posso criar uma tabela, inserir dados e dar
  > rollback em
  >   > caso de erro???
  >   >
  >   > eu nao posso dar commit pois antes de criar a tabela, eu tenho outros
  >   > comandos que nao podem ser commitados no caso de erro.
  >   >
  >   > Será q existe alguma regra na transacao do tipo:
  >   > Criacao de tabela deve ser comitada senao a transacao nao enxerga..
  >   >
  >   > Que raio de transacao é essa do FB????
  >   >
  >   >
  >   >   ----- Original Message -----
  >   >   From: Fellipe Henrique
  >   >   To: delphi-br@yahoogrupos.com.br
  >   >   Sent: Monday, July 31, 2006 10:02 AM
  >   >   Subject: Re: [delphi-br] Mistério na Transação com FB.
  >   >
  >   >
  >   >   Amigo, realmente o erro vai dar, pois a tabela Teste nao existe, e
  > esta
  >   > na
  >   >   mesma transacao.. o que voce pode fazer eh apos o Create Table dar
  > um
  >   >   CommitRetaining.... assim voce comita  e permanece na mesma
  > transacao..
  >   > ou
  >   >   usar uma transacao diferente ara a criacao da tabela...
  >   >
  >   >
  >   >   []s
  >   >
  >   >   Em 31/07/06, José Otavio DTI <[EMAIL PROTECTED]>
  >   > escreveu:
  >   >
  >   >   >
  >   >   > Bom dia a todos.
  >   >   >
  >   >   > Estou usando um IBTransaction ligado a um IBDataBase
  >   >   > Estou usando um IBQuery ligado a este Transaction para executar as
  >   >   > seguintes instruções:
  >   >   >
  >   >   > Transacao.StarTransaction
  >   >   >    try
  >   >   >       // Instruções SQL executadas no IBQuery que está ligado a
  >   > transação
  >   >   > em questão
  >   >   >       <instrução SQL>
  > --------------------------------------------->
  >   > OK
  >   >   >       <instrução SQL>
  > --------------------------------------------->
  >   > OK
  >   >   >       <instrução SQL>
  > --------------------------------------------->
  >   > OK
  >   >   >       Create Table Teste (cTeste VarChar(20)); -----------> OK
  >   >   >       Insert into Teste (cTeste) Values ('Texto')   --------->
  > ERRO!!!
  >   >   >    except
  >   >   >       Transacao.Rollback
  >   >   >    end;
  >   >   > Transacao.Commit
  >   >   >
  >   >   > O problema ocorre na hora de dar o insert... da um erro dizendo
  > que a
  >   >   > tabela Teste não existe.
  >   >   > Teoricamente, era pra transação enxergar a tabela, uma vez que ela
  >   > esta
  >   >   > sendo criada na mesma.
  >   >   > Se eu der um commit após o create, funciona corretamente.
  >   >   > Mas estou trabalhando com transacao justamente para dar o commit
  > só no
  >   >   > final.... pois se acontecer allgum erro, posso dar rollback e
  > cancelar
  >   >   > tudo... inclusive a criação da tabela.
  >   >   >
  >   >   > Qualquer instrução SQL nesta transação, funciona corretamente...
  > só o
  >   >   > Ceate Table não funciona.
  >   >   > Ele executa o create mas a transação nao enxerga a tabela.
  >   >   >
  >   >   > Será que as instruções em uma transação só funcionam com as
  > tabelas ja
  >   >   > criadas?
  >   >   >
  >   >   > Creio que não estou trabalhando de forma errada com a conexão e
  > seus
  >   >   > parametros... pois quando dou inserts numa tabela ja criada,
  > funciona
  >   >   > corretamente... e se precisar dar Rollback também.
  >   >   >
  >   >   > Alguém desvenda este mistério?
  >   >   >
  >   >   >
  >   >   > Agradeço desde já a atenção de todos.
  >   >   >
  >   >   > Jose Otavio
  >   >   >
  >   >   > [As partes desta mensagem que não continham texto foram removidas]
  >   >   >
  >   >   >
  >   >   >
  >   >
  >   >
  >   >
  >   >   --
  >   >   _________________________________
  >   >   Fellipe Henrique
  >   >   [EMAIL PROTECTED]
  >   >
  >   >   Borland Developer Studio 2006 Certified
  >   >
  >   >   "Venham até a borda, ele disse.
  >   >   Eles disseram: Nós temos medo.
  >   >   Venham até a borda, ele insistiu.
  >   >   Eles foram, Ele os empurrou...
  >   >   E eles voaram."
  >   >   (Guillaume Apollinaire)
  >   >
  >   >
  >   >
  >   >   [As partes desta mensagem que não continham texto foram removidas]
  >   >
  >   >
  >   >
  >   > [As partes desta mensagem que não continham texto foram removidas]
  >   >
  >   >
  >   >
  >
  >
  >
  >   --
  >   _________________________________
  >   Fellipe Henrique
  >   [EMAIL PROTECTED]
  >
  >   Borland Developer Studio 2006 Certified
  >
  >   "Venham até a borda, ele disse.
  >   Eles disseram: Nós temos medo.
  >   Venham até a borda, ele insistiu.
  >   Eles foram, Ele os empurrou...
  >   E eles voaram."
  >   (Guillaume Apollinaire)
  >
  >
  >   [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > 
  >



  -- 
  _________________________________
  Fellipe Henrique
  [EMAIL PROTECTED]

  Borland Developer Studio 2006 Certified

  "Venham até a borda, ele disse.
  Eles disseram: Nós temos medo.
  Venham até a borda, ele insistiu.
  Eles foram, Ele os empurrou...
  E eles voaram."
  (Guillaume Apollinaire)


  [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 >>>>>

<*> 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

 



Responder a