Maison  >  Article  >  interface Web  >  Comment installer le package mysql dans nodejs

Comment installer le package mysql dans nodejs

青灯夜游
青灯夜游original
2021-09-16 11:38:035330parcourir

Vous pouvez utiliser l'outil npm pour installer le package mysql dans nodejs. La méthode d'installation spécifique : 1. Ouvrez le terminal et entrez le répertoire de projet spécifié ; 2. Exécutez la commande « npm install mysql --save » et attendez le résultat. téléchargement et installation pour terminer.

Comment installer le package mysql dans nodejs

L'environnement d'exploitation de ce tutoriel : système windows7, nodejs version 14.15.4, ordinateur DELL G3.

Comment installer le package mysql et se connecter à MySQL à l'aide de nodejs

Vous devez d'abord installer nodejs et npm.

Écrit un petit exemple simple. L'intégralité du petit exemple utilise le framework express et ejs ont été téléchargés dans node_modules. Jetons d'abord un coup d'œil au répertoire :

Comment installer le package mysql dans nodejs

server.js =》 Fichier de démarrage du serveur node.js

db.js =》 Fichier d'opération de base de données

views =》 Stocke les fichiers de modèle, où se trouvent toutes les pages stocké

public =》 Un endroit où toutes les ressources statiques sont stockées, telles que les images CSS js et autres

Comment se connecter à MySQL :

La première étape consiste à installer un package npm appelé MySQL, qui est. officiellement fourni. La stabilité peut être garantie. Bien sûr, il existe d'autres packages npm. Ici, nous utilisons uniquement le package mysql. La méthode d'installation est très simple, entrez la commande npm install mysql --save et attendez la fin du téléchargement

Lorsque vous voyez cela, l'installation est réussie.

Ensuite, nous ouvrons le fichier db.js et écrivons quelques codes nécessaires aux opérations de la base de données. Voir l'image ci-dessous :

Le code est très petit et la signification est évidente. La première étape doit être d'introduire le mysql. package, puis nous créons un objet vide et lui attribuons une méthode appelée requête. Cette méthode accepte deux paramètres. Le premier paramètre est l'instruction SQL lorsque vous interrogez les données, et le deuxième paramètre est la fonction de rappel pour obtenir les résultats de la requête.

En regardant à l'intérieur de la fonction, le premier bloc de code est utilisé pour définir la configuration du fonctionnement de mysql :

host représente l'adresse d'installation de mysql, car j'ai une base de données locale, j'utilise donc directement localhost

  • user représente Le nom d'utilisateur de mysql

  • password représente le mot de passe de mysql

  • database représente le nom de la bibliothèque spécifique que vous souhaitez choisir d'exploiter

  • port représente le port, qui peut être laissé vide. La valeur par défaut est 3306

mysql. La valeur de retour de createConnection, connection, est un objet spécifique pour notre prochaine opération de mysql. Toutes les méthodes d'opération sont basées sur celui-ci.

Appelez la méthode de connexion connect pour déterminer si la connexion réussit. Si elle échoue, imprimez le message d'erreur et arrêtez de fonctionner.

Appelez la méthode de requête de connexion pour envoyer des instructions SQL directement à la base de données et utilisez la fonction de rappel pour renvoyer le résultat. Il y a trois paramètres dans la fonction de rappel. l'opération échoue, elle s'arrêtera et imprimera le message d'erreur. Le deuxième paramètre est le résultat spécifique renvoyé. Dans des circonstances normales, il s'agit d'un tableau qui contient beaucoup de json. Le troisième paramètre est également un tableau qui contient l'explication. de chaque donnée, comme celle à laquelle appartiennent les données actuelles, cette table, etc. Naturellement, le deuxième paramètre que nous utilisons le plus est le deuxième paramètre. Lorsque l'opération de base de données est terminée, la connexion est fermée. Je ne sais pas si quelqu'un a rencontré le problème de perte. Lorsque je visite la page d'accueil pour la première fois, la connexion à la base de données est normale. Lorsque je visite la page d'accueil pour la deuxième fois, la connexion à la base de données ne peut pas être connectée et un message d'erreur est signalé indiquant que la connexion est perdue. La raison en est que nous fermons la connexion à la base de données après chaque opération de base de données. Lorsque nous accédons à nouveau à la base de données, nous ne trouvons pas la connexion, mais la connexion doit être fermée. Certaines personnes peuvent trouver étrange que le fichier db.js soit fermé. accessible à chaque fois que nous visitons la page d'accueil. N'y a-t-il pas une nouvelle connexion générée à chaque fois ? Oui, c'est juste que le code qui a généré la connexion au début n'a pas été placé dans la fonction db.query, mais a été placé à l'extérieur, comme indiqué ci-dessous :

La connexion ne sera générée qu'une seule fois. Après sa fermeture, la deuxième interview ne sera pas connectée. Après l'avoir placé dans la fonction, utilisez les exportations pour exposer l'interface au monde extérieur. Chaque fois que vous visitez la page d'accueil, vous suivrez à nouveau le processus de création d'une connexion et vous obtiendrez une nouvelle connexion à chaque fois, il n'y aura donc aucun problème d'accès. En fait, le pool de connexions peut être utilisé directement dans le projet. J'ai évité beaucoup de problèmes.

Le deuxième problème est que nous avons introduit db.js dans server.js

Vous avez peut-être vu à ce moment-là que mysql.query a deux paramètres, le premier est sql et le second est la fonction de rappel, le La fonction de rappel a un paramètre de résultat, qui est en fait le résultat de la requête de base de données. Certaines personnes peuvent se demander pourquoi ne pas utiliser return directement dans db.js pour renvoyer les résultats de la requête et effectuer quelques rappels !

En fait, voici quelques problèmes causés par l'asynchronie de node.js Si nous changeons le code dans server.js par l'image ci-dessous

car nous voyons que la méthode de requête du package mysql. est une opération asynchrone. Cela fait que la méthode res.render() suivante n'attend pas que le résultat soit interrogé avant de l'exécuter. Souvent, la page sera rendue avant la sortie du résultat, mais les données ne sont pas obtenues, donc une. l'erreur sera signalée. Par conséquent, nous avons dû transmettre une fonction de rappel. Une fois la méthode de requête MySQL terminée, les résultats ont été transmis à la fonction de rappel que nous avons écrite nous-mêmes via des paramètres, afin que nous puissions obtenir les résultats dans la fonction de rappel. Effectuez ensuite le rendu. Bien sûr, pour résoudre ce problème, vous pouvez également introduire le package tiers async pour résoudre le problème asynchrone. Cela dépend de chaque individu.

【Recommandation associée : "Comment installer nodejs dans un environnement Windows ? 》】

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn