FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Inserción masiva en Firebird, no aparecen todos mis registros
Buen día, tengo una tabla en mi base de datos en la cual almaceno todos los códigos postales que existen en México, son algo así de +95 mil.
A veces la autoridad competente actualiza los catálogos de códigos postales y por ende necesito actualizarlos en mi programa, pero mi problema es que se están eliminando los registros cuando realizo la inserción masiva, estos códigos postales el Servicio Postal Mexicano los publica en un Excel de dos hojas, entonces yo recorro toda la primera hoja y extraigo los valores, de la siguiente manera:
Pero en lugar de grabarme casi 95k de registros me muestra unos 50 mil ¿Alguien sabe que puedo revisar? Saludos. Edit: Hago un count(*) a mi tabla y si aparecen los 95k de registros, pero en el DBaver o en el SQL manager no aparecen Última edición por pgranados fecha: 16-06-2023 a las 21:38:36. Razón: Count |
#2
|
||||
|
||||
Cita:
Supongo que al menos estarás haciendo un commit antes de cerrar, ¿no?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
Hago el count y si aparecen los 95 mil registros, pero cuando quiero visualizarlos no aparecen, solo aparecen como 50k
|
#4
|
||||
|
||||
¡Ah!, eso será una limitación para no cargar tantos registros en memoria, supongo.
Porque si le das a "ir al último" estará, ¿no?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
Cita:
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. |
#6
|
||||
|
||||
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í:
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Inserción masiva en Firebird | ElDuc | Conexión con bases de datos | 40 | 30-04-2023 11:38:06 |
no aparecen todos los registros en consulta hecha en la aplicacion | LACV | MySQL | 5 | 01-02-2023 18:05:24 |
Insercion masiva desde Paradox a Firebird | MartinS | SQL | 5 | 22-12-2011 15:55:10 |
tabla dañada? aparecen todos los registros asi: ®?P½/”ÄrÒP | Wonni | Tablas planas | 10 | 16-06-2006 21:59:48 |
Insercion masiva de registros MUY LENTA | Balda | Firebird e Interbase | 10 | 24-03-2004 22:40:21 |
|