Como seguramente ya sabes, en Firebird puedes escribir tu propio código en bloques llamados “stored procedures“. No es obligatorio hacerlo porque esos mismos comandos podrías escribir en tu lenguaje de programación (Visual FoxPro, Visual Basic, Delphi, C, C++, Java, etc.) directamente o por medio de EXECUTE BLOCK.

Entonces: ¿es conveniente usar stored procedures?

La respuesta es un rotundo sí y los motivos son los siguientes:

  1. El stored procedure puede ser llamado desde cualquier lenguaje de programación (Visual FoxPro, Visual Basic, Delphi, C, C++, Java, etc.). Esto implica que un programador puede trabajar con un lenguaje y otro programador con otro lenguaje y ambos obtendrán los mismos resultados
  2. Si trabajas en equipo los stored procedures estarán disponibles para todos quienes tengan permiso sobre ellos
  3. Como el Firebird puede ser usado en varios sistemas operativos, la aplicación de un programador podría estar en Windows y la de otro programador en Linux y ambos podrían usar el mismo stored procedure de la misma Base de Datos
  4. Como el stored procedure está compilado dentro de la Base de Datos su ejecución es mucho más rápida que los comandos equivalentes escritos en un lenguaje de programación
  5. Si escribes algo erróneo el Firebird lo detectará y te lo hará saber al instante. Por ejemplo si escribiste el nombre de una tabla o de una columna inexistentes o si la sintaxis de algún comando es incorrecta no podrás grabar el stored procedure hasta corregir esos errores.
  6. El tiempo de desarrollo es mucho menor ya que si usas un programa de administración gráfica tal como EMS SQL Manager o Flame Robin al instante de escribir el stored procedure ya lo puedes ejecutar; en cambio si escribes los comandos del Firebird dentro del código fuente de tu programa tendrás que compilarlo, ejecutarlo, posiblemente hacer varios clic hasta llegar al lugar adecuado para poder verificar que funcione. Como normalmente tu código fuente no funcionará al 100% la primera vez, tendrás que repetir ese proceso varias veces con la consiguiente pérdida de tiempo.

El punto 5. le otorga confiabilidad a tu aplicación, porque de lo contrario podrías tener a un usuario descontento porque tu programa se le colgó justo cuando tiene que terminar esa tarea tan importante.

En síntesis, siempre que debas manipular datos deberías hacerlo sí o sí dentro de un stored procedure. En tu lenguaje de programación solamente deberías ejecutar stored procedures y vistas, nada más. Eso, si quieres tener seguridad y confiabilidad. Y la tranquilidad de saber que todo funciona y funcionará bien.

Conclusión:

Los stored procedures son una herramienta muy poderosa que nos provee el Firebird y deberíamos usarlos al 100% para que nuestras aplicaciones sean robustas y altamente confiables. Los únicos comandos del Firebird que deberíamos escribir en nuestras aplicaciones son SELECT * FROM MiVista y EXECUTE PROCEDURE MiStoredProcedure.

Artículos relacionados:

Entendiendo a los stored procedures

El índice del blog Firebird21

El foro del blog Firebird21

Anuncios