![]() |
campo unico duplicado
estimados.....
estoy utillizando bases de datos Paradox, tengo 2 bases de datos (Dbf de Clipper a Db de Paradoz). Tengo un campo que es nro_vale el cual es primary key. necesito pasar registros de una tabla a la otra y controlar que no existe en la otra tabla. Lo que estoy hacecindo es utilizar una función que le paso como pareametro el nro_vale y en otra TTable que referencia a la tabla hago un filtro con filter (nro_vale=XX), si cantidad de registro es >0 entronces devuelvo true sino false. Si da false hago append y asigno valores, sino paso al proximo registro. Esto funciona bien, pero el tema esta en que ahora tengo 6000 registrros y el proceso es muy lento, creo que la función que usa el filtro se pone cada vez mas lenta mientras mas registri tenga, aunque tenga asignado el índice sobre el campo a buscar. ¿¿¿¿¿¿Hay alguna forma mas facil de controla que no se me duplique??? muchas gracias seken ;) |
Si la tabla que recibe los datos es la de tipo Paradox, bastará con que declares ese campo Clave primaria y luego utiliza FindKey([txto]) para saber si existe o no dicho Registro.
Un Saludo. |
estamos mas cerca
marcos
que me deuelve el findkey ??? un valor logico?? y de esa forma lo puedo usar con un if??? :confused: seken |
Exacto:
Un Saludo. |
Otra opción podría ser haciendo el Post sin verificar nada y esperar el evento OnPostError.
// Saludos |
La franja horaria es GMT +2. Ahora son las 23:57:18. |
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