[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