CSV: Pequeñas bases de datos en formato de texto
En 2018 publiqué un post «Ficheros CSV para hacer manejables los datos» que esencialmente sigue vigente, donde trataba del uso de los ficheros CSV. Hoy hablaremos de algunas actualizaciones de las aplicaciones más sencillas.
CSV
CSV (= «Comma Separated Values) o Valores separados por comas son un tipo de ficheros cuyo contenido está formado por líneas de texto en las que cada línea es un registro, que contienen información estructurada en partes o campos, de forma que en cada línea los campos equivalentes estén en la misma posición respecto de otros campos, desde el inicio de la línea. Los campos pueden tener longitud o contenido de texto variable y están separados por comas. Si para un registro no hay información de un campo se deja en blanco, pero se sigue separando el espacio por una coma. Para evitar ambigüedades donde se archiven datos numéricos se suelen emplear en lugar de simples comas «,» puntos y coma «;». También pueden emplearse otros separadores a fin de hacer más legible el contenido, siempre que el tipo de separador se mantenga en todo el fichero.
Para visualizar la estructura de un CSV escribimos una lista de la compra imaginaria con cantidades, precios y otros datos (notas y marca de los productos):
orden;concepto;cantidad;precio por Kg o unidad de envase;notas;marca
1;pollo;1 Kg;5€;;Pollos de Granja
2;manzanas;2 Kg;1,99 €;golden;Great Apples
3;cerveza;6 u;0,9 €;sin gluten;Lager del Norte
4;yogures;4 envases;1,2€;;Bifidulandia
...
Esto sería el texto de las primeras 5 líneas de un fichero CSV sencillo que tiene 6 campos y un número indeterminado de registros, en el que se ha empleado el separador punto y coma «;» (La primera línea incluye los nombres de los campos y el primer campo de cada línea se está empleando para identificar el registro que representa la línea). Observamos que en las líneas identificadas con 1 (la segunda línea) y con 4 (la quinta línea) el campo «notas» está vacío y por eso hay dos separadores «;» sin nada «dentro». Dado que el contenido de un fichero CSV es simplemente texto, se puede visualizar fácilmente sin ninguna aplicación específica, incluso en un móvil o tablet, con un simple editor o visor de tipo bloc de notas, lo que hace que estos ficheros CSV sean tan versátiles. Para facilitar la edición y manejo de los CSV en un PC, disponemos de distintos programas de los que veremos a continuación algunos gratuitos y portables elegidos.
Software
Como lo que queremos es emplear los instrumentos más sencillos, solo hablaremos del bloc de notas representado por Notepad3, de CSVEd y de TablePro. Los programas de hojas de cálculo (MS Excel, Libre Office Calc, etc.), y los clásicos de base de datos (como DB Browser for SQLite y otros más complejos), todos pueden usar fichero CSV para alimentar sus datos, pero requieren más conocimientos y recursos y son como diría el refrán español «matar pulgas a cañonazos» para pequeñas bases de datos en las que no se necesita ninguna sofisticación. Para visualizar, como ejemplo, cómo es el aspecto de una base de datos CSV en esos programas, emplearemos un fichero en que se definen las siglas usadas internacionalmente para identificar los distintos paises, basado en la norma ISO-3166. Cargaremos ese mismo fichero en cada uno de los tres programas elegidos. Los tres programas que mencionaremos a continuación son gratuitos y portables, por lo que, además de no costarnos dinero, se pueden arrancar desde un pendrive o desde cualquier carpeta del ordenador. Los enlaces, incluidos con los nombres de los programas a continuación, apuntan al lugar de descarga de sus versiones actualizadas a fecha de hoy.
Bloc de notas
Podemos emplear el programa de bloc de notas o notepad que viene de serie en el propio Windows o bien, yo prefiero el Notepad3, del que he puesto el enlace a la página de descargas. Hay que elegir la versión portable. Es la continuación de la saga de notepad2. Tiene más prestaciones que el bloc de notas de Windows y es portable. Puede abrir ficheros CSV y de otros muchos tipos y es un lector-editor universal para ficheros de texto plano. La magia de la coloración distinta de los campos, que surge espontaneamente sin programar nada, hace que sea visible el contenido de una forma práctica y agradable.

CSVEd
Este programa (de 32 bits) se puede descargar para Windows en CSVEd, y con el se puede hacer virtualmente todo tipo de ediciones en las filas, en las columnas, buscando y corrigiendo errores, etc. Constituye él solo un programa de bases de datos en formato de texto CSV. Viene muy bien cuando queramos editar a la vez un gran número de registros modificando por ejemplo un prefijo en un campo de todas las filas, o alterando el orden de las columnas de forma precisa.

TablePro Portable
Esta es la mínima expresión de una base de datos. TablePro, del que os enlazo la versión que se puede encontrar en The Portable Freeware Collection, maneja los ficheros CSV como haría cualquier base de datos más compleja, pero con un escritorio sencillo y sin necesidad de más florituras. Es capaz de encriptar los contenidos con contraseña y de hacer pequeños cálculos como sumas de los contenidos de una columna e incluso gráficos de la evolución de los datos de un campo dado. Puede corregir errores en los ficheros y exportar los datos a varios formatos. Yo he usado esta aplicación para manejar ficheros con 3000 registros y funcionaba como la seda.

Conclusiones
Todo este software ya estaba inventado hace años, pero me ha emocionado comprobar que sigue siendo válido y útil y que hay versiones más modernas de todos ellos que las que empleaba en el anterior post citado. Por eso les doy una nueva oportunidad para usar bases de datos sin saber mucho de bases de datos y sin gastar dinero en ello.
DISCLAIMER.- Use el software y procedimientos descritos bajo su sola responsabilidad. Parte del software que se menciona puede modificar el sistema operativo del ordenador o del teléfono y provocar perdidas de información o mal funcionamiento del mismo. No se ofrece ninguna garantía ni implícita ni explícita. Ni se admite ninguna responsabilidad por mal uso o pérdidas originadas en equipos informáticos o en datos que contengan, causadas por software y métodos que aquí se indican.
