Personalmente prefiero utilizar querys para realizar consultas incluso determinadas operaciones que se podrían hacer en Stored Procedures me gusta programarlas en Delphi.
¿Porqué?
(1) Desde Delphi son más fáciles de "debuggar" que si están en un SP o en un trigger del SGBD.
(2) Más fáciles de portar. He visto sistemas que nunca cambiarán de SGBD porque es IMPOSIBLE migrar todos los Stored Procedures y Triggers que tienen implementados.
(3) Porque a la hora de "seguir" la ejecución de un programa y actualizarlo te puedes volver loco intentando seguir el rastro de las operaciones. Resulta que lanzas un Update en una tabla, eso hace saltar un trigger que lanza un stored que a su vez hace updates en un par de tablas con triggers...
Divertidíssimo...
¿Es una regla absoluta? No.
Los Stored van muy bien cuando se necesita mayor velocidad y eficiencia. Para grandes conjuntos de datos o para operaciones complejas que incluyen muchas tablas.
Pero para consultas normales (entiendo que el 90% o 95%) en un programa estandard prefiero querys.