Esto lo puedes "achicar" aún usando un TTable. Tú realizas manualmente la búsqueda pero la componente TTable ya tiene métodos para realizar búsquedas como Locate o FindKey:
Código:
tabla1.open;
if tabla1.locate('Mi_Campo', Texto_a_ingresar) then
Application.MessageBox('ya existe el texto','Error' ,MB_DEFBUTTON1);
else
begin
tabla1.insert;
tabla1.fieldbyname('Mi_Campo').asstring:=Texto_a_ingresar;
tabla1.post;
end;
Con un Query podrías poner la siguiente sentencia:
select * from tabla where Mi_Campo=Texto_a_ingresar
y ejecutas la consulta con Query.Open. Si la consulta te regresa por lo menos un registro es que ya existe uno con el texto. Si no te regresa ningún registro entonces lo insertas.
// Saludos