Ir al contenido principal

Día 3. Creación de la base de datos Firebird y las dos primeras tablas de base de datos

 En este día pasamos a la acción.

Una vez que he separado los datos de las dos posibles tablas en la hoja de cálculo, paso a la acción y creo la base de datos de Firebird y las dos tablas que habíamos identificado.

En el proceso de creación de tablas me entretengo en explicar los tipos de datos que utilizo y por qué.

Supongo que en esto de los tipos de datos habrá opiniones diferentes a la mía, de hecho, en casi ningún tutorial utilizan algunos datos como yo. También relacionado con los tutoriales, explico un error que he detectado en uno de ellos y que creo que es bastante frecuente.

Pienso que mis explicaciones pueden ser útiles, porque en general, en los tutoriales se entretienen muy poco en explicar los datos (y yo quizá me he entretenido demasiado).

Hay un dato que he explicado, la inexactitud de los números en coma flotante, que muchas veces, cuando lo he mencionado, me han rebatido. Para el que esté interesado, en esta página La Guía del Punto Flotante - Tipos exactos explican lo de los números exactos y en la web lo relacionado con los números de punto flotante.

En el proceso de creación de las tablas he descubierto un bug que reportaré. Ya os informaré en LibreOffice-ES cuando lo haga, por si me queréis apoyar o aportar algo más.

El vídeo es un poco más largo de lo que me gustaría, pero os recomiendo verlo entero, por las explicaciones de tipos de datos, y me gustaría que hubiera comentarios en este sentido.




Comentarios

  1. En este vídeo, como era de esperar, he metido varias veces la pata.

    En primer lugar, en el campo Población, lo escribo con acento (con tilde), aunque creo que he mencionado que es mejor evitarlo, así que esto habrá que corregirlo.

    Menciono que he encontrado un bug y he comentado la existencia de otro. Pues bien, ninguno de los dos son bugs, sino que, como pasa demasiadas veces, lo que parece un bug no es sino el fruto de nuestra ignorancia. El próximo día comentaré los "bugs" y que es lo que ha hecho que me equivoque.

    También me han comentado que sería necesaria una tercera tabla de detalles de la factura ¡tranquilos, ya la haremos!

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Día 16. Empleo de la tabla desde-hasta. Subconsultas

Hoy vemos como emplear la tabla desde-hasta de tipos de IVA que creamos el último día. Para ello, en primer lugar creamos una consulta para ver el funcionamiento. A continuación esa consulta, la empleamos como subconsulta en la consulta que ya teníamos con todos campos.

Día 18. ¡Vuelvo a desnormalizar!

Tras añadir una cantidad apreciable de nuevos datos para poder hacer pruebas, en primer lugar vemos y comentamos un poco el rendimiento de las consultas que teníamos hechas para obtener los datos de la vista y los informes. Como comentario, añadido a lo que se comenta en el vídeo, podemos ver que las consultas, ya con una cantidad apreciable de datos, tardan bastante menos que con HSQLDB. De hecho, se obtienen los datos de casi 17500 registros, con combinación de 5 tablas, en milésimas de segundo, aunque Base tarda un poquito más en mostrar los resultados. Os recuerdo que no he actualizado los informes, a pesar de que he cambiado la consulta y vistas subyacentes, por lo que habría que actualizarlos (pero de momento no lo haré, creo que no aportaría nada nuevo). En la segunda parte vuelvo a desnormalizar la tabla Detalles. La desnormalización, en este caso la justifico, y explico que, bajo mi punto de vista, las normas de normalización, no siempre son imperativas. Para la desnormalizaci...

Día 20. Creamos dos procedimientos almacenados.

 En primer lugar creamos un procedimiento (almacenado) para que se actualicen automáticamente las fechas de validez de los tipos de IVA cuando añadimos un registro nuevo a la tabla. Vemos el funcionamiento del procedimiento. Con este procedimiento se hacen dos actualizaciones en la misma tabla, por un lado se hace una inserción y por otro lado una actualización de otro registro diferente al insertado. Suponemos que si se produce un error a mitad de las dos operaciones (inserción y actualización) se producirían inconsistencia de los datos.  Para comprobarlos generamos los errores manualmente y comprobamos que no se producen inconsistencias porque el procedimiento se ejecuta dentro de una transacción . Explicamos, más o menos, qué es una transacción. Hay dos tipos de procedimientos almacenados, el creado anteriormente es un procedimiento ejecutable , así que para finalizar vemos como se crea un procedimiento seleccionable , que devuelve una tabla de datos,  y como se e...