Solo para aclarar un poco. Si utilizas llaves primarias en tu base de datos, no tendrás que buscar los datos, luego compararlos con los que quieres grabar, para luego tomar la decisión de si los grabas o no los grabas.
Utilizando llaves, solo tienes que hacer el intento de grabar y listo.
Código:
try Grabar
except on Key violation "Ya existe"
y sin llaves:
Código:
Buscar
Comparar
SI ya existe TONS
"Ya existe"
SI NO
Grabar