bases de datos

Generador de datos SQL con JavaScript

Hoy te mostraré una idea o prototipo de un generador para llenar bases de datos SQL usando el lenguaje de programación JavaScript. Básicamente es como un faker, seeder o generador de datos aleatorios para llenar bases de datos.

Recientemente tuve la necesidad de generar datos falsos para mi programa de renta de consolas de juegos por tiempo, y como era algo rápido decidí crear un pequeño script para la tarea.

Con lo que te mostraré espero que te puedas dar una idea de cómo hacer el tuyo y ver qué tan fácil es. Igualmente puedes usarlo como base para tu propio script.

Detalle de la tabla

El script que hice solo llenaba una tabla de la base de datos, misma que tiene las siguientes columnas:

  • id_dispositivo
  • inicio
  • fin
  • costo
  • costo_productos
  • es_tiempo_libre
  • cobrado
  • segundos_pausa
  • fecha_pausa

Como puedes ver tiene algunas columnas que son de fechas.

Funciones

Lo que necesitamos para tener datos aleatorios son funciones que nos den números aleatorios. En mi blog ya tengo una función para generar números aleatorios:

See the gist on github.

Y ya con esa función podemos tener otras funciones, por ejemplo, la de la fecha aleatoria en donde creamos un objeto de tipo Date con año, mes, día, hora, minutos y segundos aleatorios usando la función anterior:

See the gist on github.

Además de las funciones para generar los datos tenemos otras ayudantes para formatear la fecha y cosas de ese tipo.

Generando datos aleatorios para llenar base de datos

Ahora veamos cómo generar datos aleatorios para nuestra base de datos. Basta con concatenar una cadena dentro de un ciclo y generar los datos aleatorios.

See the gist on github.

La concatenación se está haciendo en la línea 18 (usando también las backticks), mientras que la cantidad de registros se controla en la línea 5.

Al ejecutar el script, genera lo siguiente:

Generar datos aleatorios con JavaScript para llenar base de datos SQL

Como puedes ver, son datos aleatorios pero cumplen con la sintaxis para ser importados a una base de datos.

Nota: en este caso ejecuté el script del lado del servidor con Node, pero funciona de la misma manera en el navegador web.

Importando datos aleatorios en base de datos

Ahora que ya tenemos nuestro generador podemos redireccionar su salida a un archivo. Por ejemplo, voy a generar 5000 datos aleatorios y guardarlos en un archivo con:

node generador.js > datos.sql

Nota: si usas JS del lado del cliente no podrás redireccionar la salida ya que no es un comando, en su lugar tal vez quieras generar un archivo desde JS.

Miles de datos generados en formato SQL con Script de JavaScript para llenar base de datos

Ahora que ya tienes el archivo puedes importarlo a cualquier motor como MySQL o SQLite. Yo lo he usado para SQLite3 y funcionó perfectamente.

Con esto ya puedes generar tus propios datos aleatorios ya sean cadenas, fechas, números, etcétera. Obviamente esto solo es un pequeño ejemplo rápido.

Te dejo con el código completo del generador:

See the gist on github.

Por aquí te dejo con más tutoriales de JavaScript.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Imprimir PDF con Bot de Telegram

La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…

2 días hace

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

3 días hace

PHP: incrustar imagen en base64

El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…

3 días hace

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

4 días hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

2 semanas hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

2 semanas hace

Esta web usa cookies.