[firebase-br] Travamento Desconhecido - Interbase 6.5

Danilo Pinheiro danilopinheiro em gmail.com
Qua Maio 30 08:21:51 -03 2007


Pessoal, sou novo na lista.
Estava fazendo alguns testes com meu banco de dados, e reparei um erro
ao fazer uma select. Fui depurando, afunilando e cheguei nesse
sequencia minima que reproduz o Erro.

USO INTERBASE 6.5. Testei no FIREBIRD  e nao deu o erro. Apenas no interbase.

O erro não causa nenhuma mensagem de erro no IBCONSOLE.

Mas no grid, aparece 1 registro e um monte de registro todos Nulls.
Alem de travar a pesquisa, nao conseguir fazer mais pesquisa..etcc...


A sequencia é essa.

1. Cria um Banco Vazio Normal - DIALECT 3, WIN1252, PAGE 4096
2. Criar Tabela DESPESAS

-----------------------------------
/* Table: DESPESAS, Owner: ADMINISTRADOR */

CREATE TABLE "DESPESAS"
(
 "NUMERO_EMPRESA"      INTEGER NOT NULL,
 "NUMEROLANCAMENTO"    INTEGER NOT NULL,
CONSTRAINT "PKDESPESAS" PRIMARY KEY ("NUMERO_EMPRESA", "NUMEROLANCAMENTO")
);
-------------------------------------

3. Criar Tabela EMPRESASELECIONADA

-------------------------------------
/* Table: EMPRESASELECIONADA, Owner: ADMINISTRADOR */

CREATE TABLE "EMPRESASELECIONADA"
(
 "IDCONEXAO"   INTEGER NOT NULL,
 "NUMERO_EMPRESA"      INTEGER NOT NULL,
CONSTRAINT "PK_EMPRESASELECIONADA" PRIMARY KEY ("IDCONEXAO", "NUMERO_EMPRESA")
);
------------------------------------

4. Criar visão VISAO

-------------------------------------
/* View: VISAO, Owner: ADMINISTRADOR */

CREATE VIEW "VISAO" (
 "NUMERO_EMPRESA"
) AS

SELECT
 D.NUMERO_EMPRESA
FROM
 DESPESAS D
UNION
SELECT
 B.NUMERO_EMPRESA
FROM
 DESPESAS B
;
----------------------------------------

5. Preencher tabela DESPESA

-------------------------------------
INSERT INTO "DESPESAS" ("NUMERO_EMPRESA", "NUMEROLANCAMENTO") VALUES (1, 1);
-------------------------------------

6. Preencher tabela EMPRESASELECIONADA

-------------------------------------
INSERT INTO "EMPRESASELECIONADA" ("IDCONEXAO", "NUMERO_EMPRESA") VALUES (1, 1);
-------------------------------------

7. Executar Select

-------------------------------------
SELECT
 V.NUMERO_EMPRESA
FROM
 VISAO V,
 EMPRESASELECIONADA E
WHERE
 E.IDCONEXAO=1
AND
 V.NUMERO_EMPRESA=E.NUMERO_EMPRESA
-------------------------------------

8. Reparar que a "ampulheta" fica travada..
   No grid retorna registros nulos
   Se tentar fazer outras pesquisas (CTRL+ENTER) não dá.
   Depois quando fecha o interbase da fatal error.

Isso ai...

Não consegui ver nenhuma bronha...mas se virem me avise!!
Se alguem puder me ajudar a descobrir o motivo desse erro. Onde está o
erro, eu agradeco.

Abracos.

Danilo Pinheiro




Mais detalhes sobre a lista de discussão lista