Saludos,
Roman tiene razón pero de todas maneras, puedes atender a una sugerencia, ante todo te recomendaría la siguiente práctica, usa una función que se llama QuotedStr () y de esa forma no te lias con las comillas de los strings. Mira la prueba.
Tu código...
Código Delphi
[-]
query.sql.add('select * from base where paterno
like'+''''+'%'+paterno.text+'%'+''''+'and materno
like+''''+'%'+materno.text+'%'+''''
+'and nombre like'+''''+'%'+nombre.text+'%'+'''');
Ahora como yo te sugiero....
Código Delphi
[-]
query.sql.add ('SELECT * FROM base where paterno like ' +
QuotedStr ('%' + paterno.text + '%') + ' and materno like ' +
QuotedStr ('%' + materno.text + '%') + ' and nombre like ' +
QuotedStr ('%' + nombre.text + '%'));
y si quieres bordarlo, puedes almacenar la cadena de la consulta en una variable de tipo string sustituyendo los parámetros por %s y después aplicar lo siguiente
Código Delphi
[-]
Consulta := 'SELECT * FROM base where paterno like %s and
materno like %s and nombre like %s';
query.sql.add (Format (Consulta, [QuotedStr ('%' + paterno.text + '%'),
QuotedStr ('%' + materno.text + '%'),
QuotedStr ('%' + nombre.text + '%')]);
Con lo que mantienes una claridad de código, y si quieres ver como queda la consulta te remito al siguiente hilo
http://www.clubdelphi.com/foros/show...&highlight=Sql
donde hay una mágnifica función de Tino que puede servirte de ayuda en estos procesos.
Espero haberte ayudado.