La conexion entre NodeJS y Mysql sirve para gestionar una base de datos, extraer datos o mostrar datos, etc que esten en una base de datos Mysql, tambien si queremos hacer alguna aplicacion o sistema son NodeJS.
NodeJS es un lenguaje de programacion Popular que utiliza en su mayoria lenguaje y sintaxis de javascript, pero mejorando muchas cosas como pueden ser asincronia, manejo del sistema de archivos, dispositivos y mucho mas.
Aqui veremos como usar el conector de mysql de nodejs para administrar o gestionar una base de datos mysql.
Lo primero que debemos hacer es instalr nodejs, npm y mysql para nodejs.
Tambien tenemos que tener un servidor mysql al cual conectarnos, en nuestro caso tenemos el mysql que usamos para PHP, pero este lo podemos usar con cualquier lenguaje de programacion como Java, Php, Python y en este caso NodeJS.
sudo apt-get install nodejs # instalar nodejs sudo apt-get install npm # instalar el NodeJs Package Manager o NPM npm install mysql # instalar el modulo o paquete de Mysql para mysql
En nuestro caso estamos usando Linux, pero en Windows debes instalar los ejecutables de Node y NPM, cuando tengas node y NPM ya todo lo tienes que hacer desde la terminal y con codigo como seguiremos a continuacion.
Base de datos
La base de datos tiene solo una tabla y tiene la siguiente estructura.
create database prueba; use prueba; create table persona( id int not null auto_increment primary key, name varchar(255), phone varchar(255), created_at datetime );
Codigo
El nombre de nuestro codigo de ejemplo sera mysql1.js y pondremos todo el siguiente codigo.
En esta parte creamos la conexion a la base de datos, es importante agregar los valores de host, user, password y database.
var mysql = require("mysql"); ///////////// Crear la Conexion var con = mysql.createConnection({ host: "localhost", user: "evilnapsis", password: "A123456Z", database: "prueba", dateStrings:true, }); /////////////////////////////////// con.connect(function(err){ if(err) throw err; // Si hay un error lo mostramos y termina el script console.log("Conectado!"); ///////////// Insertar Datos var sql1 = "insert into persona (name, phone, created_at) value('Nombre', '123456789', NOW());" ; // Consulta SQL para insertar datos con.query(sql1, function(err, result){ if(err) throw err; // Si hay un error lo mostramos y termina el script console.log("Datos insertados!"); }); /////////////////////////////////// ///////////// Mostrar Datos var sql2 = "select * from persona"; // Consulta SQL para mostrar datos con.query(sql2, function(err, result, fields){ if(err) throw err; // Si hay un error lo mostramos y termina el script console.log("Mostrar datos!"); result.forEach(function(row){ console.log(row.id + " | " + row.name + " | "+ row.phone + " | " + row.created_at); // Se muestran los datos en la consola/terminal }); }); /////////////////////////////////// ///////////// Cerrar la conexion con.end() });
Este escript hay una seccion de conexion, una de insertar datos y luego una seccion de mostrar datos, para filnalizar con cerrar la conexion.
Resultado
El resultado al Ejecutar el script es el siguiente.