Lo primero... Busca el respaldo mas cercano y haz una copia

, luego vacia los datos de la base ded atos de respaldo, por ultimo has un traspaso de datos entre una y otra (con algun utilitario), en algun momente el traspasador quedara colgado (en las tablas malas), por lo general se daña solo un bloke, ocea, si aplicas un "where clave primaria > x" (donde x es el ultimo valor correcto que se traspaso) en tu traspasador entonces continuara desde el primer registro bueno despues del bloke malo... claro que deberas ir probando desde que registro empieza a agarra para poder continuar, una vez que acabe chequea el rango de registros que te falta, por ultimo empieza a rellenar, si estan en alguno de tus respaldos, los puedes sacar de ahi, sino solo te quedará reingresar la informacion....
como informacion estadistica te cuento que en mi empresa tenemos una base de datos interbase 5.0, la cual cada sierto tiempo nos da una de esas sorpresas, generalmente producidas por falta de recursos del PC en especial la memoria, y el 70% de las veses que se apaga mal el computador con la base de datos abierta, debido a ello decidimos pasar todo a MySQL, el cual ha estado inbatible (los 2 trabajan en el mismo servidor), las mejoras para trabajar con el es otro cuento, en el 100% de los daños que hemos tenido el bloke dañado se encuentra en el medio de la tabla o al principio, no se si es buena suerte o que por algun motivo los datos de esos lugares son más volatiles.... bueno ojalá te sirva.
Saludos.
PD: Si no tienes respaldo, entonces create la base de datos vacia... puedes obtener los create en en SQLExplorer que trae delphi..., por sierto el traspasador que hice yo funciona muy bien, pero no se donde publicarlo para pasartelo.....