Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Eliminar registros duplicados...

Estas en el tema de Eliminar registros duplicados... en el foro de Visual Basic clásico en Foros del Web. Hola a todos La problematica esta asi... Tengo una base externa la cual se importa a otra base mediante una instruccion SQL ("Insert to")mi problema ...
  #1 (permalink)  
Antiguo 12/05/2010, 22:29
Avatar de buxforever  
Fecha de Ingreso: abril-2009
Ubicación: Tijuana, B.C
Mensajes: 107
Antigüedad: 13 años, 9 meses
Puntos: 0
Eliminar registros duplicados...

Hola a todos
La problematica esta asi...
Tengo una base externa la cual se importa a otra base mediante una instruccion SQL ("Insert to")mi problema es que no se como indicarle a VB6 mediante una instruccion que si (X) registro ya se encuentra en base de datos se omita y continue con el siguiente registro a importar...
Nota:
La instruccion SQL realiza toda la importacion de tabla a tabla..
Mi base de datos es en Access
O bien otra idea que tengo es que al final de que haya importado la base realize una especie de busqueda de registros duplicados y despues proceda a eliminarlos...mediante SQL...

Requiero de su ayuda ya apenas me voy induciendo en el mundo de SQL

Saludos
  #2 (permalink)  
Antiguo 13/05/2010, 11:17
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 13 años, 4 meses
Puntos: 47
Respuesta: Eliminar registros duplicados...

Hola!
Intenta asi:

NOTA: ASUMO QUE TIENES UN CAMPO LLAMADO "DOCUMENTO"

Despues de insertar todos los registros, haz un recordset con la instruccion: "SELECT DISTINCT DOCUMENTO FROM TABLA"

Do while not recordset1.eof

Despues, otro recordset con esta instruccion: "SELECT * FROM TABLA WHERE DOCUMENTO=" & Recordset1!DOCUMENTO

Luego preguntas:
Do while not recordset2.eof
Cont=Cont+1
Loop

IF cont>1 THEN

Recordset2.movefirst

aqui debes guardar todos los campos en variables temporales, luego los borras, luego insertas los que guardaste en las vaiables temporales, asi:

VAR1=Recordset2!campo1
VAR2=Recordset2!campo2
VAR3=Recordset2!documento
VAR4=Recordset2!campo4

conexion.execute "delete from tabla where documento=" & recordset2!documento
conexion.execute "insert into tabla (campo1,campo2,documento,campo4) values (VAR1,VAR2,VAR3,VAR4)

Cont=0
ELSE
Recordset1.movenext
If Recordset2.state=1 then recordset2.close
END IF
Loop

Verifia si la logica te funciona.
  #3 (permalink)  
Antiguo 14/05/2010, 13:00
Avatar de buxforever  
Fecha de Ingreso: abril-2009
Ubicación: Tijuana, B.C
Mensajes: 107
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Eliminar registros duplicados...

No me funciono me sigue duplicando registros...

Etiquetas: duplicados, eliminar, registros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:31.