Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-02-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Error division by Zero

Hola,
estoy desarrollando un programa usando D2009 y los componentes TIB de la paleta Interbase sobre windows 7.

He colocado un TIBDatabase, TIBTransaction y TIBQuery conectados entre si para acceder a una base de datos Firebird 2.1

En la base de datos tengo una tabla con varios campos definidos como varchar(255).

La conexión la hace bien, siempre y cuando el SELECT del IBQuery no incluya uno de los campos varchar, momento en que da: error division by zero
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
  #2  
Antiguo 28-02-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y qué estructura tiene la tabla?, ¿qué campos son y de qué tipos?, ¿dónde está el select que haces?
Responder Con Cita
  #3  
Antiguo 28-02-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y qué estructura tiene la tabla?, ¿qué campos son y de qué tipos?, ¿dónde está el select que haces?
Es una tabla sencilla:
Código SQL [-]
CREATE TABLE DATOS
(
  NUMERO Integer NOT NULL,
  EXPEDIENTE Integer NOT NULL,
  OBRA Varchar(255),
  DIRECCION Varchar(255),
  FECHA Date,
  BLOQUE Varchar(255),
  DESCRIPCION Varchar(1000),
  FOTO_GENERAL Blob sub_type 0,
  DETALLES Varchar(1000),
  DIBUJO Blob sub_type 0,
  LEYENDA Varchar(1000),
  EJECUCION Blob sub_type 1,
  OBSERVACIONES Blob sub_type 1,
  VISTA Blob sub_type 0,
  CROQUIS Blob sub_type 0,
  LEYENDA_CROQUIS Varchar(1000),
  PRIMARY KEY (NUMERO)
);

Y el select lo hago en el propio IBQuery.SQL.Add('SELECT * FROM Datos;'); para rellenar un DBGrid.

Si solo pido los campos que NO son varchar, no hay problema (ni con integer, ni con los blob, o la fecha, tengo error), en el momento que incluyo cualquiera de ellos... Por cierto, el tamaño tampoco importa
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
  #4  
Antiguo 28-02-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Hola arturom.

¿Cuál es el mensaje de error exacto?
Responder Con Cita
  #5  
Antiguo 28-02-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Cita:
Empezado por arturom Ver Mensaje
La conexión la hace bien, siempre y cuando el SELECT del IBQuery no incluya uno de los campos varchar, momento en que da: error division by zero
Lo he marcado en rojo
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
  #6  
Antiguo 28-02-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
A mi me tiene la pinta de ser un bug de Delphi o de algunos de los componentes (la grid, ...). ¿ Los tienes bien actualizados ?.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #7  
Antiguo 01-03-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
¿Estás seguro de no tener ningún campo calculado o evento que dependa del Query y que divida por algún valor de los del select?

Dices que el servidor Firebird es el 2.1. ¿El cliente es de esa misma versión?
Responder Con Cita
  #8  
Antiguo 01-03-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Hola,
después de que empezara a darme el error, he creado un proyecto nuevo donde pongo sólo los tres componentes que ya he mencionado y hago la conexión, el error salta al intentar abrir el IBQuery.

Estoy trabajando en mi PC, donde tengo instalado firebird 2.1.3 descargado directamente desde la página oficial.

Ya he trabajado con anterioridad con el y no he tenido problemas, la única diferencia es que había usado la ZeosLib y ahora pretendo usar los IB.

Voy a probar con Zeos a ver si funciona...
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
  #9  
Antiguo 01-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Me "suena" a un problema con la BD o la configuración del juego de caracteres de la misma. ¿Puede ser?
Responder Con Cita
  #10  
Antiguo 01-03-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Hola,
pues al final no se lo que puede ser, pero he empezado a tener problemas diversos, los Zeos no colocan los enlaces a sus unidades en uses, me saltan errores de access violation at address XXXX varios y ahora dice que no encuentra los archivos dcu.

No se, quizá la última actualización que he relaizado del SO se ha cargado algo o al avast se le ha colado algún virus o troyano, o me ha cogido la gripe A el PC

En fin, ya estoy reinstalando D2009 para empezar de nuevo.

Gracias por vuestro interes
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
  #11  
Antiguo 04-03-2011
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
Resp

Que char set estas usando.

Y si quieres asegurarte de donde es el error de la bd o de los componete so el set de cracteres prueb aesa misma consulta desde un gestor por ejemplo ibexpert o emsmanager u otro.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
  #12  
Antiguo 04-03-2011
Avatar de arturom
arturom arturom is offline
Miembro
 
Registrado: dic 2003
Ubicación: Alicante
Posts: 91
Poder: 21
arturom Va por buen camino
Hola,
estoy usando UTF8.

He usado FlameRobin para conectarme a la base de datos sin problemas.

En cualquier caso, ya he instalado de nuevo Delphi y se han acabado todos los problemas, probablemente ha sido una corrupción a la hora de actualizar el sistema operativo.

Gracias por vuestro interés.
__________________
"No guardes nunca en la cabeza aquello que te quepa en un bolsillo."

Albert Einstein
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
División con group by Palmiro SQL 2 10-02-2009 19:47:50
falla en división mamaro Firebird e Interbase 11 12-02-2007 17:48:44
Error el división fayala Varios 3 02-08-2005 01:58:48
division por cero kalimero Varios 7 21-12-2004 16:24:28
Módulo de una división en Interbase Newbie Firebird e Interbase 1 06-11-2003 23:29:02


La franja horaria es GMT +2. Ahora son las 22:13:03.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi