Firebird Stored Procedure Generator

8 comentarios

Si te aburre escribir stored procedures y te gustaría automatizar esa tarea, puedes usar para ello un programa gratuito llamado Firebird Stored Procedure Generator, el cual puedes descargar desde:

http://www.sieradelta.com/Products/FBSPGen.aspx

Los comandos que puedes automatizar son:

  • INSERT
  • UPDATE
  • UPDATE OR INSERT
  • DELETE
  • SELECT
  • SELECT ALL
  • SELECT PAGE
  • COUNT

Cuando ejecutes al programa, después de descargarlo e instalarlo, verás una pantalla similar a la siguiente:

fspg01

Captura 1. Si haces clic en la imagen la verás más grande

Al hacer clic sobre el botón “Next”, verás la siguiente pantalla, en la cual deberás ingresar los datos de la Base de Datos con la cual deseas trabajar:

fspg02

Captura 2. Si haces clic en la imagen la verás más grande

Para asegurarte que has escrito bien los parámetros de conexión puedes hacer clic en el botón “Test Connection”. Si la conexión puede realizarse exitosamente, verás una pantalla similar a la siguiente:

fspg03

Captura 3. Si haces clic en la imagen la verás más grande

Si luego haces clic sobre el botón “Next”, verás una pantalla similar a la siguiente:

 

fspg04

Captura 4. Si haces clic en la imagen la verás más grande

Al hacer clic en el botón “Load Objects” le dirás que cargue todas las tablas de tu Base de Datos para que pueda luego utilizarlas en los stored procedures que te generará el programa.

fspg05

Captura 5. Si haces clic en la imagen la verás más grande

En este caso se seleccionó la tabla CUENTAS y por eso nos mostró todas las columnas de la tabla CUENTAS. El siguiente paso es seleccionar las columnas por las cuales se puede ordenar la tabla y seleccionar el generador (secuencia) que le corresponde a esta tabla.

fspg06

Captura 6. Si haces clic en la imagen la verás más grande

 El siguiente paso es decirle cuales son los prefijos que nos gustaría usar para nombrar al stored procedure, a sus variables, y a sus parámetros. Desde luego que podremos cambiarlos más adelante si no nos gustan.

fspg07

Captura 7. Si haces clic en la imagen la verás más grande

Luego, elegimos el tipo de stored procedure que queremos generar:

fspg08

Captura 8. Si haces clic en la imagen la verás más grande

Luego, si lo deseamos, podemos escribir los nombres de los usuarios y los nombres de los roles que tendrán permiso para ejecutar al stored procedure que estamos creando. Debemos escribir un usuario o un rol en cada línea:

fspg09

Captura 9. Si haces clic en la imagen la verás más grande

A continuación generaremos el stored procedure haciendo clic sobre el botón “Generate”.

fspg10

Captura 10. Si haces clic en la imagen la verás más grande

Si deseamos copiar el stored procedure en el portapapeles, hacemos clic sobre el botón “Copy”.

Si queremos guardar el stored procedure en un archivo de script, hacemos clic sobre el botón “Save”.

Finalmente, en la siguiente pantalla, si deseamos guardar la configuración para un uso futuro,  hacemos clic sobre el botón “Save”

fspg11

Captura 11. Si haces clic en la imagen la verás más grande

Conclusión:

Escribir stored procedures largos puede ser bastante tedioso. Gracias a este programa: Firebird Stored Procedure Generator podremos realizar esa tarea mucho más rápidamente y sin aburrirnos.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

Anuncios

¡¡¡FIREBIRD 3.0 HA SIDO LIBERADO!!!

9 comentarios

¡¡¡POR FIN!!!

La noticia que tanto tiempo estuvimos esperando por fin llegó: FIREBIRD 3.0 YA ESTÁ DISPONIBLE.

Hoy 19 de abril de 2016, me enviaron un e-mail desde el Firebird Project avisándome que Firebird 3.0 ya está listo para ser descargado desde este enlace:

http://www.firebirdsql.org/en/firebird-3-0-0/

Así que a partir de ahora pueden esperar muchos artículos del blog refiriéndose a las novedades y a las mejoras que encontraremos en Firebird 3.0

El autor de este blog evaluará exhaustivamente a Firebird 3.0 pero no lo usará en nuevos proyectos hasta al menos dentro de 2 meses cuando esté razonablemente seguro de que funciona todo bien.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

 

 

Guardando y recuperando fotografías y vídeos

1 comentario

Si usas Visual FoxPro con Firebird entonces podría serte útil descargar un archivo .ZIP dentro del cual hay unos .PRG y un formulario en cuyos códigos fuente podrás ver:

  • Como mostrar una fotografía guardada en el disco duro
  • Como guardar esa fotografía en una tabla de Firebird
  • Como recuperar esa fotografía para poder mostrarla
  • Como mostrar un vídeo guardado en el disco duro
  • Como grabar ese vídeo en una tabla de Firebird
  • Como recuperar ese vídeo para poder mostrarlo
  • Como conectarse a una webcam
  • Como mostrar lo que está filmando la webcam
  • Como guardar una captura de lo que está filmando la webcam
  • Como desconectarse de la webcam

FOTOS_VIDEOS_1Captura 1. Si haces clic en la imagen la verás más grande

FOTOS_VIDEOS_1

Captura 2. Si haces clic en la imagen la verás más grande

 FOTOS_VIDEOS_3Captura 3. Si haces clic en la imagen la verás más grande

 FOTOS_VIDEOS_4Captura 4. Si haces clic en la imagen la verás más grande

NOTAS:

  •  No necesitas estar conectado a la Base de Datos para elegir y ver fotografías y vídeos que se encuentran en el disco duro o para usar la webcam
  • Para poder guardar o recuperar las fotografías y los vídeos en una tabla de Firebird evidentemente sí tendrás que estar conectado a la Base de Datos
  • Con la opción de vídeos no solamente podrás elegir vídeos sino también archivos .MP3 y .WAV, para escuchar música y sonidos. Usé un control VMPlayer.OCX7 en este formulario, pero por supuesto que tú puedes usar cualquier otro que te guste
  • Si quieres, puedes hacer clic en el checkbox “Mostrar contraseña” para ver la contraseña que se escribe en el campo de texto “Contraseña”. Es opinión del autor de este blog que esa opción siempre debería existir cuando se pide una contraseña
  • El código fuente es muy profesional pero por supuesto que podría mejorarse, si no programas de esta manera podría serte útil fijarte y revisar muy bien el código fuente, podrías aprender algo. Una mejora evidente es crear una clase que tenga todas esas opciones para que cuando necesites tener gráficos, fotografías, vídeos, o webcam, te resulte muy fácil conseguirlo.
  • El archivo .ZIP puedes descargar desde:

http://www.mediafire.com/download/9xdqn838zbu2jyh/SQL_FOTOGRAFIAS.zip

 Artículos relacionados:

Guardando y mostrando fotografías

El índice del blog Firebird21

El foro del blog Firebird21

 

 

Firebird 3.0 beta 1 disponible para ser descargado

8 comentarios

Firebird 3.0 será la nueva y muy mejorada versión de Firebird. Su beta 1 puede ser descargado desde:

http://www.firebirdsql.org/en/firebird-3-0-0-beta1/

y un archivo .PDF con información sobre esa versión puede ser descargado desde:

http://web.firebirdsql.org/download/prerelease/rlsnotes/Firebird-3.0.0_Beta1-ReleaseNotes.pdf

IMPORTANTE:

Las versiones beta no deben ser usadas en producción ni en entornos donde se requiere de un sistema estable. Son liberadas para que quienes quieran colaborar con Firebird puedan hacerles pruebas, buscar errores, e informar de esos errores que encuentren a los desarrolladores, para que éstos puedan corregirlos.

No hay garantías de que todo funcione bien, así que no las instales en las computadoras de tus clientes.

Pero sí puedes instalarlas en tu propia computadora, hacerles pruebas, e informar de los problemas que encuentres, ya que eso acelerará la liberación de la versión Firebird 3.0 definitiva.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

 

Firebird 3: campaña de lanzamiento

5 comentarios

Ya falta muy poco para que el tan esperado Firebird 3 haga su aparición en escena, se tiene previsto que ese hecho acontezca en los primeros meses del año 2015. Mientras tanto, ya se ha lanzado la campaña oficial de lanzamiento, más datos puedes encontrar aquí (en inglés):

http://www.firebird3.com/

Para que sea lanzado más rápido y con mejor calidad puedes ayudar como beta tester, es decir probando la versión actual y reportando cualquier error que hayas encontrado. En un producto gratuito como lo es Firebird la ayuda de la comunidad es muy apreciada y muy necesaria. Si pocos o nadie colaboran entonces los desarrolladores tardarán muchísimo más tiempo en terminar sus tareas porque ellos además de programar también tendrán que dedicarse a hacer las pruebas, evidentemente eso les restará tiempo para lo más importante que es desarrollar un producto muy bueno y de muy alta calidad. Es por eso que necesitamos que también participes y te involucres.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21

 

 

Algunas preguntas y respuestas sobre el SQL de Firebird

7 comentarios

1. ¿Cómo creo una nueva Base de Datos?

Usando el comando CREATE DATABASE

2. ¿Cómo creo una tabla?

Usando el comando CREATE TABLE

3. ¿Qué es un dominio?

Un tipo de datos que yo puedo definir, usando para ello un tipo de datos ya existente

4. ¿Cómo le agrego datos a una tabla?

Con el comando INSERT o con el comando UPDATE OR INSERT

5. ¿Cómo modifico los datos de una tabla?

Con el comando UPDATE o con el comando UPDATE OR INSERT

6. ¿Cómo borro filas de una tabla?

Con el comando DELETE

7. ¿Cómo puedo conocer el contenido de una tabla?

Con el comando SELECT

8. ¿Cómo puedo combinar datos de dos o más tablas?

Con las cláusulas JOIN y UNION

9. ¿Una tabla puede combinarse con sí misma?

10. ¿Cómo puedo mostrar los resultados de un SELECT ordenados?

Con la cláusula ORDER BY

11. ¿Qué debo hacer para buscar un dato dentro de una tabla?

Usar la cláusula WHERE o la cláusula HAVING

12. ¿Cómo puedo totalizar los valores de una columna de una tabla?

Usando la función agregada SUM().

 13. ¿Cómo hago para agrupar datos similares?

Usando la cláusula GROUP BY

14. ¿Qué es una clave primaria o Primary Key?

Un valor único que sirve para identificar a cada fila de una tabla, las Primary Key no pueden repetirse ni tener valores NULL

15. ¿Qué es un valor NULL?

Un valor desconocido. NULL no es lo mismo que una cadena vacía ni una fecha vacía ni un cero. NULL significa “desconocido” o sea que no se tiene la menor idea de cual es su valor.

16. ¿Qué es una clave foránea o Foreign Key?

Un valor que sirve para relacionar a dos tablas entre sí.

17. ¿Qué es una clave única o Unique Key?

Un valor que no puede estar repetido.

18. ¿Qué es una restricción check?

Una condición que debe cumplirse para que una fila pueda ser insertada o actualizada

19. ¿Qué es un stored procedure?

Una rutina que se ejecuta cuando el desarrollador de la Base de Datos quiere que se ejecute

20. ¿Qué es un trigger?

Una rutina que se ejecuta automáticamente cuando se cumple una condición

21. ¿Cómo puedo restringir el acceso al contenido de la Base de Datos?

Otorgándoles derechos, también llamados permisos o privilegios, a las personas autorizadas. Si muchas personas compartirán los mismos derechos entonces suele ser conveniente crear roles. Un rol es un grupo de usuarios que tienen exactamente los mismos derechos.

Artículos relacionados

El índice del blog Firebird21

El foro del blog Firebird21

 

Libro electrónico para consultas con Firebird

17 comentarios

Parece que la idea de tener un libro en castellano que trate sobre consultas Firebird tiene bastante apoyo. Ahora, se me ocurrió otra idea, relacionada con la anterior.

Los libros en papel van camino a extinguirse, al menos los relacionados con temas informáticos, la mayoría los lee o los leerá dentro de pocos años en computadoras, tabletas, celulares, etc.

Así que no tiene mucho sentido escribir un libro de esa forma en una materia tan técnica. Aunque el libro esté en PDF seguirá siendo material imprimible y estático.

Mi nueva idea es crear un programa de computadora que sea un libro. En otras palabras, lo leerás como si se tratara de un libro pero haciendo clic sobre un botón podrás ver los ejemplos ejecutarse e inclusive podrás cambiar esos ejemplos.

¿Existe ya algo así?

Probablemente, aunque yo aún no lo he visto. Si lo conoces te agradecería que me enviaras el enlace.

Y si no existe, mejor, estaría creando algo nuevo. Una nueva técnica de enseñanza.

Entonces, irías leyendo el libro y cuando quieras podrás cambiar los ejemplos mostrados. De esa forma aprenderás más rápido.

Así, si en una “página” ves algo como:

SELECT
   *
FROM
   CLIENTES
WHERE
   CLI_NOMBRE STARTING WITH 'A'

podrás cambiarlo a algo como:

SELECT
   *
FROM
   CLIENTES
WHERE
   CLI_NOMBRE STARTING WITH 'B'

Y al instante verás los resultados. Me parece que será muy útil, al menos a mí me hubiera gustado que existiera algo así cuando empecé a aprender el lenguaje SQL.

Entonces, la aplicación constaría de:

  • Un programa ejecutable. El “libro” en sí
  • Muchas “páginas”. Cada “página” mostraría un SELECT, explicaría como funciona, mostraría los resultados, y permitiría cambiar el SELECT
  • Una Base de Datos embebida

Características:

  • El programa sería portable, para poder llevarlo en un pen-drive y ejecutarlo en cualquier computadora.
  • Se usará la arquitectura embedded del Firebird para no necesitar instalar al Firebird
  • El “libro” tendrá muchas “páginas”. Cada “página” contendrá la explicación de un SELECT. Ese SELECT el lector podrá modificarlo.
  • Haciendo clic sobre un botón el lector podrá ver en la pantalla el resultado de la ejecución del SELECT
  • También podrá ver el PLAN que se usó en ese SELECT
  • Y también podrá ver un análisis del rendimiento de ese SELECT
  • El “libro” estará organizado por categorías o capítulos, cada uno tratando un tema específico
  • Si el lector quiere buscar una “página” o un SELECT, tendrá varias maneras de hacerlo
  • Cada “página” podrá ser impresa, si el lector así lo desea.
  • Se podrá imprimir el “libro” completo, con la configuración original o con la configuración cambiada por el lector

Bien, esa es mi nueva idea. La cual además tiene otra ventaja sobre la de escribir un libro en PDF, y es que podría permitir descargar el “libro” y algunas de sus “páginas” (digamos unas 15) para que el lector pueda evaluar la aplicación. Y luego, si le interesa, podrá descargar las restantes 200 páginas (o algo así) después de pagar algunos dólares por ellas.

¿Tienes comentarios? Quisiera conocerlos

Walter.

 

Older Entries