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 17-06-2023
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¡Ah!, eso será una limitación para no cargar tantos registros en memoria, supongo.
Porque si le das a "ir al último" estará, ¿no?
Responder Con Cita
  #2  
Antiguo 19-06-2023
Avatar de pgranados
pgranados pgranados is offline
Miembro
 
Registrado: sep 2022
Ubicación: México
Posts: 264
Poder: 2
pgranados Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¡Ah!, eso será una limitación para no cargar tantos registros en memoria, supongo.
Porque si le das a "ir al último" estará, ¿no?
Ese es el problema, cuando voy al "ultimo" si aparece el registro que debería de ser. Pero cuando voy al primero no aparece el que debería de.

Esa tabla de 95k registros tiene como 17 campos, intente grabando solamente los "obligatorios para el funcionamiento del programa" que son como 4 (los demás son meramente informativos para el usuario), y de esta forma si aparecen todos los registros.
Responder Con Cita
  #3  
Antiguo 19-06-2023
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
Desde Delphi, después de terminar la inserción deberías hacer un SELECT y asegurar que el WHERE no esté filtrando por algo que te esconda registros.
Si haces "SELECT * FROM TABLA" y luego vas al último deberías verlos todos.
Por otro lado revisa que no estés insertando registros duplicados.
En España existe el caso de que varios pueblos pequeños que compartan un mismo código postal.
También se da el caso inverso. Barcelona tiene muchos códigos postales.

De todos modos, habría que ver el código completo para poder saber qué es lo que hay dentro de cada componente.

Cuando se hacen Inserts Masivos, lo normal no es utilizar una tabla, sinó ejecutar un Query independiente ya que los DataSets pueden tener alguna cosa que no podemos controlar.

Yo haría los inserts así:

Código Delphi [-]
var
  Q : TQuery.Create;

begin
[...]
  with Q.SQL do
  begin
    Add(' INSERT INTO CODIGO_POSTAL (CODIGO, NOMBRE, ...) ');
    Add(' VALUES (:CODIGO, :NOMBRE, ...);
  end;

  Q.Prepare;

  for Fila := 6 to Rango.Rows.Count do
  begin
     Q.Params[0].AsString := Rango.Cells[Fila,1].value;
     Q.Params[1].AsString := Rango.Cells[Fila,2].value;
     Q.Params[2].AsString := Rango.Cells[Fila,3].value;
     Q.ExecSQL;
  end;

  Q.Commit;
  [...]
end;
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
Inserción masiva en Firebird ElDuc Conexión con bases de datos 40 30-04-2023 10:38:06
no aparecen todos los registros en consulta hecha en la aplicacion LACV MySQL 5 01-02-2023 17:05:24
Insercion masiva desde Paradox a Firebird MartinS SQL 5 22-12-2011 14:55:10
tabla dañada? aparecen todos los registros asi: ®?P½/”ÄrÒP Wonni Tablas planas 10 16-06-2006 20:59:48
Insercion masiva de registros MUY LENTA Balda Firebird e Interbase 10 24-03-2004 21:40:21


La franja horaria es GMT +2. Ahora son las 12:49:16.


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