Connecter MySQL avec NodeJS

Connecting Mysql With Nodejs



Le serveur MySQL est un serveur de base de données très populaire et il est pris en charge par les langages de programmation les plus utilisés, tels que PHP, Python, Perl, Java, C#, etc. C'est une application open source, donc tout le monde peut télécharger cette application pour stocker, récupérer , la mise à jour et la suppression de données à l'aide de requêtes de base de données. Vous aurez besoin que les packages serveur et client soient installés sur votre système pour effectuer différents types d'opérations de base de données sur le serveur de base de données. Le serveur MySQL devient également populaire pour les développeurs de nœuds. Les développeurs de nœuds commencent à utiliser le serveur MySQL avec MongoDB pour certaines fonctionnalités spéciales du serveur MySQL. Comment vous pouvez établir une connexion avec le serveur MySQL en utilisant le client node-mysql est montré dans ce tutoriel.

Prérequis:

Avant de commencer ce didacticiel, vous devez confirmer que le serveur MySQL et les packages client sont installés et fonctionnent correctement sur votre système. Si vous installez le serveur MySQL pour la première fois, le mot de passe de l'utilisateur root est vide par défaut. Mais vous devez définir le mot de passe de l'utilisateur root pour établir une connexion avec le serveur MySQL en utilisant le nœud-mysql client. Vous pouvez vérifier ceci Didacticiel pour savoir comment changer le mot de passe root du serveur MySQL.







Exécutez les commandes suivantes pour travailler en tant qu'utilisateur root et vous connecter au serveur MySQL à l'aide du client MySQL.



$sudo -je
$ mysql-uracine-p

Entrez le mot de passe root et exécutez les commandes SQL suivantes pour créer une nouvelle base de données, créer une table sur cette base de données et insérer des enregistrements dans cette table.



La commande suivante créera une base de données nommée madb .





CRÉER BASE DE DONNÉES madb;

La commande suivante pour sélectionner la base de données pour effectuer des opérations de base de données.

utilisation madb;

La commande suivante créera une table nommée livre dans la base de données mydb.



CRÉER TABLE livre(
identifiant INT (6) NON SIGNÉ INCRÉMENTATION AUTOMATIQUE CLÉ PRIMAIRE ,
Titre VARCHAR (cinquante) NE PAS NUL ,
auteur VARCHAR (cinquante) NE PAS NUL ,
le prix entier (5));

La commande suivante insère quatre enregistrements dans livre table.

INSÉRER DANS livre valeurs
( NUL ,« Apprendre PHP et MySQL », 'Robin Nixon', Quatre cinq),
( NUL ,« Apprendre JQuery », 'Jonathan', 35),
( NUL ,« Angulaire en action », 'Jérémy', cinquante),
( NUL ,« Maîtriser Laravel », 'Christophe', 55);

Installez le client mysql pour nodejs :

Exécutez la commande suivante pour vérifier nodejs est installé dans le système avant d'exécuter la commande d'installation du client mysql de nodejs. Il affichera la version installée de nodejs.

$nœud-v

S'il n'est pas installé, vous devez l'installer en exécutant la commande suivante.

$sudo apt-get installernodejs

Vous aurez besoin d'un autre package nommé au dessus du niveau de la mer à installer dans le système pour installer le client mysql pour nodejs. S'il n'est pas installé avant, exécutez la commande suivante pour installer au dessus du niveau de la mer .

$sudo apt-get installerau dessus du niveau de la mer

Maintenant, exécutez la commande suivante pour mettre à jour le système.

$sudo apt-get mise à jour

La commande suivante installera mysql module pour nodejs qui fonctionnera comme client mysql.

$au dessus du niveau de la merinstallermysql

Connexion MySQL simple à l'aide de NodeJS :

Créez un fichier JS nommé connexion1.js avec le script suivant pour établir une connexion avec la base de données précédemment créée nommée madb et lire les données de livre table. mysql module est importé et utilisé pour créer une connexion simple avec le serveur MySQL. Ensuite, une requête sera exécutée pour lire tous les enregistrements de livre table, si la base de données est correctement connectée. Si la requête s'est exécutée correctement, tous les enregistrements de livre table sera imprimée dans le terminal et la connexion à la base de données sera fermée.

connexion1.js

// Importer le module mysql
laissez mysql=exiger('mysql');

// Paramètre de connexion à la base de données
laisser la connexion=mysql.créerConnexion({
hôte: 'localhost',
utilisateur: 'racine',
le mot de passe: '1234',
base de données: 'mydb'
});

// Connexion à la base de données
lien.relier(fonction(Et) {
si (Et) {

// Afficher le message d'erreur en cas d'échec
revenirconsole.Erreur('Erreur: ' +Et.un message);
}

// Afficher le message de réussite si connecté
console.Journal(' Connecté au serveur MySQL... ');
});

// Définir le message de requête
$requête= 'SELECT * du livre';

// Exécuter la requête de la base de données
lien.mettre en doute($requête, fonction(Et,Lignes) {
si(Et){

// Affiche le message d'erreur
console.Journal('Une erreur s'est produite lors de l'exécution de la requête.');
revenir;
}
/* Affiche les données formatées extraites de la table 'book'
en utilisant la boucle for */

console.Journal('Les enregistrements de la table du livre : ');
console.Journal('Titre Auteur le prix ');
pour(laisser rangée de rangées) {
console.Journal(ligne['Titre'],' ',ligne['auteur'],' ','$',ligne['le prix']);
}
});

// Ferme la connexion à la base de données
lien.finir(fonction(){
console.Journal(' Connexion fermée. ');
});

Sortir:

Exécutez la commande suivante pour exécuter le script.

$nœud connection1.js

La sortie suivante apparaîtra après l'exécution du script.

Connexion MySQL regroupée à l'aide de NodeJS :

Faire une simple connexion MySQL avec NodeJS en utilisant mysql module est illustré dans l'exemple précédent. Mais de nombreux utilisateurs peuvent se connecter au serveur de base de données à la fois via l'application lorsque l'application est créée avec MySQL base de données à des fins de production. Vous aurez besoin du Express module pour gérer les utilisateurs de base de données simultanés et prendre en charge plusieurs connexions de base de données.

Exécutez la commande suivante pour installer le Express module.

$au dessus du niveau de la merinstallerExpress

Créez un fichier JS nommé connexion2.js avec le script suivant. Si vous vous connectez à MySQL avec le script suivant, 10 utilisateurs simultanés pourront établir une connexion avec le serveur de base de données et récupérer les données de la table en fonction de la requête. Il établira une connexion au port 5000.

connexion2.js

// Importer le module mysql
mysql=exiger('mysql');

// Importer le module express
Express=exiger('Express');

// Définir l'objet du module express
application=Express();

// Établir une connexion à la base de données pour gérer 10 utilisateurs simultanés
bassin=mysql.créerPiscine({
limite de connexion:dix,
hôte: 'localhost',
utilisateur: 'racine',
le mot de passe: '1234',
base de données: 'mydb',
déboguer: vrai
});

/* Établir une connexion groupée avec une base de données et lire des enregistrements spécifiques à partir d'une table de cette
base de données */

fonctionhandle_database(demander,réponse) {

// Faire la connexion
bassin.obtenirConnexion(fonction(Et,lien){
si (Et) {

//Envoyer un message d'erreur pour une connexion infructueuse et terminer
réponse.json({'code' : 300, 'statut' : 'Erreur de connexion à la base de données'});
revenir;
}

// Affichage du message de réussite dans le terminal
console.Journal('Base de données connectée');

// Lecture d'enregistrements particuliers de la table book
lien.mettre en doute('SELECT * du livre où titre comme '%PHP%' ou titre comme
'%Laravel%''
,fonction(Et,Lignes){lien.Libération();
si(!Et) {

// Renvoie le jeu de résultats de la requête si elle est exécutée avec succès
réponse.json(Lignes);
}
});

// Vérifiez que l'erreur de connexion se produit ou non
lien.au('Erreur', fonction(Et) {
réponse.json({'code' : 300, 'statut' : 'Erreur de connexion à la base de données'});
revenir;
});
});
}

// Appel de la fonction de connexion
application.avoir('/',fonction(demander,réponse){-
handle_database(demander,réponse);
});

// Ecoute la demande de connexion sur le port 5000
application.Ecoutez(5000);

Sortir:

Exécutez le script depuis le terminal comme dans l'exemple précédent. Il attendra la demande de connexion après l'exécution du script.

$nœud connection2.js

Maintenant, ouvrez n'importe quel navigateur et accédez à l'URL suivante pour envoyer une demande de connexion.

http://localhost:5000

La sortie suivante apparaîtra comme une réponse après l'exécution de la requête.

Si vous ouvrez le terminal maintenant, vous verrez la sortie suivante.

Dix demandes de connexion peuvent être envoyées à la fois à partir de 10 navigateurs de la manière mentionnée ci-dessus.

Conclusion:

Les façons les plus simples de travailler avec MySQL et NodeJS sont illustrées par deux exemples dans ce didacticiel. Si vous êtes un nouveau développeur Node et que vous souhaitez travailler avec une base de données MySQL, j'espère que vous serez en mesure d'accomplir votre tâche après avoir lu ce didacticiel.