En un proyecto utilize la opcion de que toda la logica estubiera en la base. Utilice triggers, vistas actualizables, procedimiento almacenados, secuencias, integridad referencial, dominios, etc. Si bien funciona perfecto y muy rapido, me era muy costozo a la hora de aplicarle parches a la base de datos de produccion, siempre se armaba algun lio, quizas por falta de experiencia, aunque existen buenos productos para hacer esto como dbcomparer.<br>
Luego con delphi utilice instantobjects (un orm), que si bien es pequeńo y tiene algunas falencias, me facilito tanto la vida que me enamore. Es una lastima que no este disponible para lazarus/fpc todavia.<br>Saludos.<br>
<br><div class="gmail_quote">El 24 de junio de 2009 10:34, Giuseppe Luigi Punzi Ruiz <span dir="ltr"><<a href="mailto:glpunzi@lordzealon.com">glpunzi@lordzealon.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hola,<br>
<br>
Los que trabajáis en Firebird. Dejáis toda la lógica de los datos en la BBDD?<br>
<br>
Es decir, para los campos autonuméricos un trigger, para un campo total en la cabecera de factura, un trigger que lo actualice al insertar una linea en la tabla de lineas, lo mismo para descontar de stockage por ejemplo y demás.<br>

<br>
Dejando sólo para la aplicación, aquellos que no se pueda hacer directamente sobre la BBDD.<br>
<br>
Un saludo.<br>
<br>
<br>
Giuseppe Luigi Punzi Ruiz<br>
Blog: <a href="http://www.lordzealon.com" target="_blank">http://www.lordzealon.com</a><br>
Twitter & Skype & GoogleTalk accounts: glpunzi<br>
<br>
<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
Lazarus-es mailing list<br>
<a href="mailto:Lazarus-es@lists.lazarus.freepascal.org" target="_blank">Lazarus-es@lists.lazarus.freepascal.org</a><br>
<a href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es" target="_blank">http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Carlos Germán Tejero<br>