Skip to content

VictorHerdz10/ExcelMapDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ExcelMapDB CLI - Herramienta de Mapeo de Excel a Bases de Datos

📋 Descripción

ExcelMapDB CLI es una herramienta de línea de comandos profesional diseñada para mapear y migrar datos desde archivos Excel a múltiples sistemas de bases de datos. Con una interfaz interactiva y amigable, permite transformar y cargar datos de manera eficiente y confiable.

🚀 Características Principales

✅ Soporte Multi-Base de Datos

  • MongoDB - Inserción en colecciones con transformación automática de tipos
  • PostgreSQL - Creación automática de tablas e inserción tipada
  • MySQL - Soporte completo con validación de conexión
  • SQLite - Creación y uso de bases de datos locales

📊 Manejo de Excel Avanzado

  • Formatos soportados: .xlsx, .xls, .xlsm
  • Detección automática de hojas de cálculo
  • Procesamiento inteligente de tipos de datos
  • Manejo de errores con reportes detallados
  • Limpieza automática de nombres de columnas

🎨 Interfaz de Usuario

  • Menú interactivo con colores y formato
  • Barras de progreso en tiempo real
  • Validación en tiempo real de entradas
  • Confirmaciones interactivas
  • Resumen detallado de operaciones

🔧 Funcionalidades Técnicas

  • Conversión automática de tipos de datos
  • Manejo inteligente de fechas Excel
  • Transformación de booleanos (si/no, true/false)
  • Normalización de caracteres Unicode
  • Transacciones seguras con rollback
  • Inserción por lotes para mejor rendimiento

📥 Instalación

Método 1: Descarga Directa (Windows)

  1. Ve a Releases
  2. Descarga ExcelMapDB-CLI-Windows-v0.1.0.zip
  3. Extrae y ejecuta ExcelMapDB_CLI.exe

Método 2: Compilación desde Fuente

# Clonar el repositorio
git clone https://github.com/VictorHerdz10/ExcelMapDB.git
cd excelmapdb

# Compilar en modo release
cargo build --release

# El ejecutable estará en: target/release/ExcelMapDB_CLI.exe

Requisitos del Sistema

  • Windows 10/11 (compatible con GNU y MSVC toolchains)
  • Rust 1.70+ (solo para compilación desde fuente)
  • Conexión a internet para dependencias (primera ejecución)

🛠️ Uso

Ejecución Básica

./ExcelMapDB_CLI.exe

Flujo de Trabajo Típico

  1. Selecciona Base de Datos - Elige entre MongoDB, PostgreSQL, MySQL o SQLite
  2. Configura Conexión - Ingresa credenciales y parámetros de conexión
  3. Especifica Archivo Excel - Proporciona la ruta al archivo Excel
  4. Selecciona Hoja - Elige la hoja de cálculo a mapear
  5. Define Tabla/Colección - Especifica el nombre de destino
  6. Procesamiento Automático - La herramienta maneja todo el proceso

Ejemplos de Configuración

MongoDB

URI: mongodb://localhost:27017/
Base de datos: mi_base_datos
Colección: mi_coleccion

PostgreSQL

Host: localhost
Puerto: 5432
Usuario: postgres
Base de datos: mi_base_datos
Tabla: mi_tabla

SQLite

Opción: Crear nueva base de datos
Ruta: ./mis_datos/
Nombre: base_datos
Tabla: mi_tabla

🔄 Proceso de Transformación de Datos

Conversión Automática de Tipos

  • Números → Enteros, Decimales, BIGINT según el valor
  • Fechas Excel → Fechas SQL/MongoDB (conversión automática)
  • Booleanos → true/false desde "si"/"no", "verdadero"/"falso"
  • Texto → Limpieza de caracteres especiales, normalización Unicode

Manejo de Errores

  • Registros problemáticos se omiten y reportan
  • Continuación automática después de errores
  • Límite de errores consecutivos con confirmación del usuario
  • Rollback transaccional en bases de datos SQL

📈 Rendimiento

Optimizaciones Implementadas

  • Inserción por lotes
  • Progreso en tiempo real con barras visuales
  • Uso eficiente de memoria con streaming de datos
  • Conexiones persistentes y pooling

Métricas Típicas

  • Confiabilidad: Rollback automático en errores
  • Estabilidad: Manejo robusto de conexiones interrumpidas

🐛 Solución de Problemas

Errores Comunes y Soluciones

"No se puede conectar a la base de datos"

  • Verifica que el servicio esté ejecutándose
  • Confirma credenciales y puertos
  • Revisa firewall y permisos de red

"Hoja de Excel no encontrada"

  • Verifica el nombre exacto de la hoja
  • Usa el selector interactivo de hojas
  • Asegúrate de que el archivo no esté corrupto

"Error de permisos"

  • Ejecuta como administrador si es necesario
  • Verifica permisos de escritura en directorios
  • Confirma acceso a archivos Excel

Logs y Debugging

  • Mensajes detallados en consola
  • Advertencias específicas por tipo de error
  • Sugerencias contextuales para solución

🤝 Contribución

Reportar Issues

  1. Ve a Issues
  2. Proporciona información detallada:
    • Versión de la herramienta
    • Sistema operativo
    • Pasos para reproducir
    • Mensajes de error completos

Desarrollo

# Clonar y configurar entorno
git clone https://github.com/VictorHerdz10/ExcelMapDB
cd excelmapdb

# Compilar en modo desarrollo
cargo build

# Ejecutar tests
cargo test

# Ejecutar clippy para mejores prácticas
cargo clippy -- -D warnings

📄 Licencia

Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para detalles.

👨‍💻 Autor

Victor Hernández Salcedo

🔮 Roadmap

Próximas Características

  • Soporte para más formatos de entrada (CSV, JSON)
  • Mapeo personalizado de columnas
  • Transformaciones de datos avanzadas
  • Modo desatendido (non-interactive)
  • Configuraciones guardadas
  • Reportes de calidad de datos
  • Soporte para más bases de datos (Oracle, SQL Server)

Mejoras Técnicas

  • Mayor paralelización
  • Caché de conexiones
  • Métricas de rendimiento detalladas
  • Plugins para transformaciones personalizadas

📞 Soporte

Si necesitas ayuda o tienes preguntas:

  1. Abre un Issue
  2. Contacta al autor por email

¡Gracias por usar ExcelMapDB CLI! 🎉

About

ExcelMapDB - Herramienta CLI para mapear datos de Excel a MongoDB, PostgreSQL, MySQL y SQLite

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages