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 02-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
El commit y el commitretaining sirven para confirmar el cambio hecho en la BD (insert, update, delete), si no haces commit entonces no se guardan los datos.

Creo que el problema va a ser de tu BD, que no tenga bien definido los índices, relaciones, etc. imposible de saber si no la podemos ver y no sabemos las sentencias exactas que haces.
Responder Con Cita
  #2  
Antiguo 02-10-2012
mcs mcs is offline
Miembro
 
Registrado: may 2007
Ubicación: Girona
Posts: 229
Poder: 18
mcs Va por buen camino
Creación de la base de datos:
Código SQL [-]
create database "ttpv.fdb" user "sysdba" password "masterkey"
  default character set utf8


Creación de una de las tablas:
Código SQL [-]
create generator gen_fam;
set generator gen_fam to 0;

create table familias (
   id int not null primary key,
   cod int,
   nom varchar(50),
   dto integer
   );

create trigger familias_bi for familias
active before insert 
position 0 as 
begin 
  if (new.id is null or new.id=0) then 
  new.id=gen_id(gen_fam, 1);
end!!

Inserción de un registro en la tabla familias:
Código SQL [-]
INSERT INTO familias (cod, nom, dto) 
VALUES (:COD, :NOM, :DTO);

Borrado de un registro en la tabla familias:
Código SQL [-]
DELETE FROM familias
 WHERE id=:ID;

Como puedes ver, es más simple que el mecanismo de un botijo... No hay ningún índice (a excepción del ID que es una primary key), y no creo que sea culpa del trigger, no?

La verdad, es que ya no sé por dónde buscar... :(

Gracias por tu ayuda!
Responder Con Cita
  #3  
Antiguo 02-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Las pruebas que has hecho antes, ¿cómo han sido?, ¿en local, en red, desde el programa, desde isql?
Responder Con Cita
  #4  
Antiguo 02-10-2012
mcs mcs is offline
Miembro
 
Registrado: may 2007
Ubicación: Girona
Posts: 229
Poder: 18
mcs Va por buen camino
Las pruebas que hecho antes son:
- En red (wifi)
- Usando el programa, más el "espía" dbMonitor (simplemente guarda las secuencias SQL que se mandan al Firebird)
- Al servidor Linux
Responder Con Cita
  #5  
Antiguo 02-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Esas pruebas no se pueden considerar concluyentes en ningún caso.

Usar wifi no es válido, (es algo muy "oscilante").
Si tienes un programa espía, tampoco es válido, (estás poniendo otra capa intermedia).

Debes hacer pruebas reales. Una red cableada normal, nada de espías. Abres isql, ibexpert, flamerobin, etc. y ejecutas una sentencia. Punto. Si va bien entonces es que va bien, no hay más. Si va mal mal entonces es cuando hay que buscar culpables.
Responder Con Cita
  #6  
Antiguo 02-10-2012
mcs mcs is offline
Miembro
 
Registrado: may 2007
Ubicación: Girona
Posts: 229
Poder: 18
mcs Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Esas pruebas no se pueden considerar concluyentes en ningún caso.

Usar wifi no es válido, (es algo muy "oscilante").
Si tienes un programa espía, tampoco es válido, (estás poniendo otra capa intermedia).

Debes hacer pruebas reales. Una red cableada normal, nada de espías. Abres isql, ibexpert, flamerobin, etc. y ejecutas una sentencia. Punto. Si va bien entonces es que va bien, no hay más. Si va mal mal entonces es cuando hay que buscar culpables.
No estoy para nada de acuerdo con esto.

El sistema en producción va a funcionar con wifi, y usando el programa que va lento. Por lo tanto, lo normal es probarlo así.

El tema del programa espía tampoco es ningún problema. Si hace falta puedo usar un cronómetro, pero a simple vista ya se ve que va lento con o sin programa espía. Y, en el peor de los casos, el programa espía alentirá el sistema 1 décima de segundo (o menos).

Por otra parte, ya te he dicho antes que he probado directamente con el ISQL y no hay problemas de velocidad en las inserciones...
Responder Con Cita
  #7  
Antiguo 02-10-2012
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Tamaño de página ?
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #8  
Antiguo 02-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por mcs Ver Mensaje
No estoy para nada de acuerdo con esto.
El sistema en producción va a funcionar con wifi, y usando el programa que va lento. Por lo tanto, lo normal es probarlo así.
Bueno, no hace falta que estés de acuerdo, o no, conmigo.
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
Firebird mal rendimiento en linux rastafarey Firebird e Interbase 26 11-06-2008 19:52:49
Firebird en Linux luiz_leo Conexión con bases de datos 3 07-08-2007 11:30:28
firebird on linux julyus Conexión con bases de datos 1 28-05-2007 19:41:32
FireBird se Duerme en Linux teletranx Linux 3 17-11-2004 21:39:53
Firebird en Linux edy_aca Firebird e Interbase 3 01-10-2004 16:47:51


La franja horaria es GMT +2. Ahora son las 18:23:01.


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