FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Copiar registro de una Tabla a otra Tabla, sin repetirse
Despues de 42 horas sin dormir, me encuentro con que no puedo conseguir algo muy sencillo, tengo dos tablas, y quiero añadirle registros de una a la otra, unicamente cuando estos sean distintos, y lo que hago es lo siguiente:
QAux--->Tabla A QEstadisticas---->Tabla B Quiero copiar de A en B, solo aquellos registros que no sean identicos a los de B, segun una condicion X.
Pero me copia aun los que estan repetidos, es decir, son identicos en ambas tablas, A y B. Que estoy haciendo mal? (ademas de no dormir, pero tengo que terminar si o si para poder tomarme unos dias de descanso) Saludos
__________________
|
#2
|
||||
|
||||
Que base de datos usas?
Lo mejor es usar sentencias SQL! Sino utiliza Locate para buscar el campo llave. El codigo b:=b no tiene sentido, quita eso!
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! Última edición por vtdeleon fecha: 27-06-2007 a las 02:59:27. |
#3
|
||||
|
||||
Cita:
__________________
|
#4
|
|||
|
|||
Copiar Registro de una tabla a otra sin repetirse
Prueba algo así como esto
__________________
Saludos Seara2005 |
#5
|
|||
|
|||
Haber si esto te puede servir
Aunque lo hice al aire porque no tengo mi Delphi, puede haber algun error. Salud OS. Edito: Se me adelanto sara2005, y me parece una muy buena idea la del LOCATE.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
#6
|
||||
|
||||
Cita:
Cita:
Danos detalles de las tablas, los campos relacionados, y el campo Id (el cual no queires que se repita).
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#7
|
||||
|
||||
Cita:
Creo que estás haciendo más recorridos de la cuenta; Recorre una única tabla y dentro de ese busca en la segunda (sea con SQL como te han dicho o con un Locate).
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#8
|
||||
|
||||
SOLUCIONADO
Gracias a todos, tome un poco de cada una de las sugerencias de ustedes y logre solucionarlo. Muchas Gracias
__________________
|
#9
|
|||
|
|||
Cita:
Muchos de nosotros te agradeceriamos que postearas la solución para consultas futuras, de esa manera, quien tenga un problema similar trendrá de primera mano la solución a sus dudas. Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
#10
|
||||
|
||||
Solucion
deberas declarar la tabla de la que copiaras los datos con el nombre: tblsource, y la tabla a la que copiaras los datos con el nombre de: tbldest.
y copia este codigo en algun boton
esta sentencia copiara el registro activo de la tabla tblsource a la tabla tbldest
__________________
Marcos: Delphi programmer Desde Republica Dominicana Pa'l mundo entero http://webhacker.webcindario.com |
#11
|
|||
|
|||
Buenas tardes, me meto en este hilo porque tengo la misma consulta...
Pasar registros de una tabla a otra, pero sin que se repitan. yo lo hago mediante dos dbgrid y en un boton puse el codigo que paso seara2005, lo modifiqué segun mi programa, pero el problema esta en que me carga el registro tantas veces como registros hay cargado en la tabla.. (ejemplo: si tengo 3 registros en total cargado en la tabla principal, me carga el registro 3 veces en la otra tabla). Como puedo solucionar eso? o que estoy haciendo mal.. Les paso mi codigo para que me puedan ayudar..
Aclaro: a la hora de la inserción uso el DataSet porque el Query no me permite el ingreso de registros ya que es de solo lectura. Muchas gracias |
#12
|
||||
|
||||
Hola Vales08.
También podes pasar registros de una tabla a otra, sin que aquellos se repitan, de este modo:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#13
|
|||
|
|||
ecfisa muchas gracias por la respuesta..
Eh probado el código pero me salta un error y no se que puede ser.. Error: Cita:
Me gustaria que me orientaras a saber donde puede estar el problema.. |
#14
|
||||
|
||||
Hola Vales08.
A primera vista, en la línea: indicas que vas a insertar valores en tres columnas de la tabla PLAN_Y_ALIM. Pero en las líneas: Solo seleccionas una columna de la tabla ALIMENTOS, es que decir que faltaría especificar dos columnas de dicha tabla para ser insertados en las columnas ID_ALIM e ID_PLAN de la tabla PLAN_Y_ALIM Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#15
|
|||
|
|||
Ahh claro..
Lo que sucede es que en la tabla PLAN_Y_ALIM solo tengo el ID_PLAN_Y_ALIM y luego las forenkey ID_ALIM (Pertenece a la tabla ALIMENTOS) y ID_PLAN (pertenece a la tabla PLANES_ALIM). Entonces lo que yo necesito es que al seleccionar un registro de la tabla ALIMENTOS, ese registro se guarde en la tabla PLAN_Y_ALIM, donde se genera un ID_PLAN_Y ALIM y se le asigna el ID_ALIM seleccionado y el ID_PLAN de la tabla PLANES_ALIM (ese id sale de un alta que hago antes). No se si se entiende. el codigo tendria que quedar asi entonces:
Seria mas o menos asi?? |
#16
|
||||
|
||||
Hola Vales08.
Si, si el campo ID de la tabla PLAN_Y_ALIM se genéra automáticamente sólo sería necesario completar esos campos. Pero cuando te referis a: Cita:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#17
|
|||
|
|||
Ahh entonces estoy equivocada con el codigo.. Yo necesito pasar archivos de una tabla a otra sin repetir, pero no todos, si no los que yo voy seleccionando desde una grilla..
Mil disculpas por haber ocupado tu tiempo en algo que no era. Y muchas gracias por tu dedicación. |
#18
|
||||
|
||||
Cita:
Para el recorrido puedes utilizar la propiedad SelectedRows y para cada registro hacer la copia.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#19
|
|||
|
|||
Bien y en la parte donde tengo que realizar la copia del registro lo hago con el codigo SQL como el que me habias pasado antes? o hay alguna forma para hacerlo con codigo delphi?
|
#20
|
||||
|
||||
Cita:
Para hacerlo utilizando comandos en Delphi, revisa código como este:
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Recorrer Tabla, contar registro repetidos y escribir totales en otra Tabla | Lucas_diaz1810 | Conexión con bases de datos | 1 | 25-12-2006 14:04:34 |
Como copiar los datos de una tabla a otra | Shidalis | Varios | 2 | 21-07-2005 15:34:32 |
Copiar Tabla de una BD a Otra BD en Firebird | pcicom | SQL | 3 | 14-02-2005 17:31:15 |
Como Copiar Un Mismo Registro De Una Tabla A Otra En Delphi | NaZi_DjInN | Tablas planas | 2 | 30-09-2004 23:13:17 |
Copiar el contenido de una tabla en otra.. | ElCherchu | Firebird e Interbase | 2 | 31-10-2003 18:11:28 |
|