Fórum Erro no interbase6 #256099

26/10/2004

0

Alguém sabe o que é o erro:

Error Message:
----------------------------------------
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
internal gds software consistency check (invalid block type encountered (147)).


Ocorre quando dou um post de uma inclusão. Depois disso, o banco fica instável.

Grato.


Ronaldo

Ronaldo

Responder

Posts

26/10/2004

Marcio.theis

o erro ´internal gds software consistency check´ acontece as vezes com frequencia para mim, dependendo do cliente, normalmente resolvo passando um Validation do interbase, ou fazendo um BackUp da base e Retore, quase sempre funciona, e quando não funciona, vou tabela por tabela para saber onde é gerado o erro...

________________
espero ter ajudado;


Responder

Gostei + 0

26/10/2004

Marcio.theis

o erro ´internal gds software consistency check´ acontece as vezes com frequencia para mim, dependendo do cliente, normalmente resolvo passando um Validation do interbase, ou fazendo um BackUp da base e Retore, quase sempre funciona, e quando não funciona, vou tabela por tabela para saber onde é gerado o erro...

________________
espero ter ajudado;


Responder

Gostei + 0

26/10/2004

Ronaldo

Ajudou + ou -.

Vc disse que vai tabela por tabela para ver onde está o erro.

Eu sei qual tabela está dando o erro, mas não faço a mínima idéia do que é.

Pelo IBExpert eu incluo um registro ok, mas no segundo já começa a gerar o erro.

Já pelo delphi, eu não consigo incluir nenhum.

Eu tenho que reiniciar o banco para conseguir trabalhar de novo.


Responder

Gostei + 0

26/10/2004

Ronaldo

A tabela possui o seguinte trigger:

AS BEGIN
IF ((NEW.CODCAIXA <= 0) or (NEW.CODCAIXA IS NULL)) THEN
NEW.CODCAIXA = GEN_ID(G_CFCAIXA, 1);
ELSE
NEW.CODCAIXA = GEN_ID(G_CFCAIXA, NEW.CODCAIXA - GEN_ID (G_CFCAIXA, 0));

END

O erro pode estar aqui?


Responder

Gostei + 0

26/10/2004

Marcio.theis

eu não sei como você criou seu generator, mas eu tenho um exemplo desta forma:

CREATE GENERATOR GEN_CLIENTE;
SET GENERATOR GEN_CLIENTE TO 0

é criado setando com zero, e ao executar a trigger que busca o próximo ele faz o seguinte:

CREATE TRIGGER CLIENTE_PROXIMOCOD FOR CLIENTE BEFORE INSERT POSITION 0 AS
        BEGIN
        IF (NEW.ID_CLIENTE IS NULL) THEN
            NEW.CLIENTE = GEN_ID(GEN_CLIENTE, 1);
        END


e até hoje funciona normalmente...

________________ 
espero ter ajudado;
[/code]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar