![]() |
Antes era re-facil
Antes, con mi viejo Clipper, era sencillo tomar de una tabla ciertos campos y adicionarlos en otra. Simplementa bastaba con recorrer la DB con un bucle e ir adicionando esos registros a la segunda tabla; previo abrirlas con un simple comando USES y cerrarlas luego con otro simple comando CLOSE.
:confused: ¿Por que esto en Delphi es tan deshumanamente complicado? Me refiero al siguiente caso, que no puedo resolver y tal vez alguien tenga la gran amabilidad de ayudar a este póbre programador obsoleto con un simple ejemplillo, veamos: En una base MDB (a quién se le puede ocurrir) hayuna tabla con campos similares a los de otra tabla Paradox-DB. Digamos, ID_NUM, NOMBRE, DOMICILIO y LOCALIDAD, todos alfanumericos. En la primer tabla (la Access) el campo LOCALIDAD es (A-2) porque conserva dígitos que referencian hacia otra tabla (DETLOC) que tiene campos llamados ID_LOC (A-2); DETALLE (A-30) por ejemplo. El campo ID_LOC sirve de enlace. Siendo ID_NUM el campo clave en ambas DB (la Access y la Paradox) necesito recorrer la primera (y su tabla de detalles de localidades) e incorporar los registros a la segunda que se encuentra vacía. Mediante BDE puedo abrir la Paradox pero no la Accesess, me da un "error_OLE_no_se_cuanto. Con ADO es mejor, ya que por lo menos la puedo abrir. :rolleyes: La cosa es que no se cómo armar el bucle que comentaba al principio. ¿Alguien que me entienda y pueda auxiliarme? |
No diria que es mas dificil, sino simplemente una cuestión de mañas. De hecho, es mucho mas facil hacer un
Query.SQL.Text := 'INSERT INTO TABLA1(campo1, campo2) SELECT campo1, campon from tabla2'; Query.execSQL; que seleccionar los registros de la tabla, hacer un for e ir haciendo inserciones registro por registro, además de ser por mucho más óptimo. En tu caso, especifica mejor el tipo de error y danos un poco de codigo. Es muy probable que sea un problema con conversion de tipos, pero eso tendremos que definirlo de acuerdo al error que te lanza la app. |
La franja horaria es GMT +2. Ahora son las 12:37:04. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi