Utilisation de MySQL avec Node.js et le client JavaScript MySQL
Node.js Les développeurs utilisent fréquemment des bases de données NoSQL, MongoDB étant un choix populaire. Cependant, la sélection de la base de données devrait s'aligner sur les besoins du projet. Les bases de données NoSQL excellent avec la création de tableaux dynamiques et les inserts en temps réel, tandis que les bases de données SQL sont mieux adaptées aux requêtes et transactions complexes. Ce didacticiel démontre l'utilisation du module mysql
- un client Node.js pour MySQL - pour se connecter à une base de données MySQL et effectuer des opérations CRUD, utiliser des procédures stockées et prévenir les vulnérabilités d'injection SQL. Cet article a été mis à jour en 2020 pour refléter les meilleures pratiques actuelles. Pour une plongée plus profonde dans MySQL, voir Jump Start MySql .
Concepts clés:
- Utilisez le module
mysql
dans Node.js pour une interaction de base de données MySQL efficace et des opérations CRUD. - Vérifiez que Node.js et NPM sont installés avant d'utiliser NPM pour installer le module
mysql
. - Établir une connexion de la base de données MySQL à l'aide de
mysql.createConnection
, implémentant une gestion des erreurs pour une gestion robuste de la base de données. - Exécuter les requêtes SQL, récupérer les données et le traitement des résultats en utilisant
con.query
. - Tirez parti des procédures stockées MySQL pour une gestion efficace du code SQL et appelez-les dans votre application Node.js via
con.query
. - sauvegarder contre les attaques d'injection SQL à l'aide de requêtes paramétrées ou la méthode
mysql.escape
pour la désinfection d'entrée.
Démarrage rapide:
Connectez-vous à MySQL dans Node.js avec ces cinq étapes:
- Créer un projet:
mkdir mysql-test && cd mysql-test
. - Initialiser
package.json
:npm init -y
. - Installez le module
mysql
:npm install mysql
. - créer
app.js
(modifier les espaces réservés):
const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'user', password: 'password', database: 'database name' }); connection.connect((err) => { if (err) throw err; console.log('Connected!'); });
- Run:
node app.js
. Attendez-vous à un "connecté!" message.
Installation du module mysql
:
Les commandes mkdir mysql-test
, cd mysql-test
, npm init -y
, et npm install mysql
Créer le répertoire de projet, initialiser le projet et installer le module nécessaire. Cela suppose que Node.js et NPM sont déjà installés. Reportez-vous à l'article SitePoint "Installez plusieurs versions de Node.js à l'aide de NVM" si nécessaire.
Configuration de la base de données:
Avant de vous connecter, assurez-vous que MySQL est installé et configuré. Créez une base de données (par exemple, sitepoint
) et une table (par exemple, authors
). Les commandes SQL suivantes peuvent être utilisées:
CREATE DATABASE sitepoint CHARACTER SET utf8 COLLATE utf8_general_ci; USE sitepoint; CREATE TABLE authors ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(50), city varchar(50), PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ; INSERT INTO authors (id, name, city) VALUES (1, 'Michaela Lehr', 'Berlin'), (2, 'Michael Wanyoike', 'Nairobi'), (3, 'James Hibbard', 'Munich'), (4, 'Karolina Gawron', 'Wrocław');
Connexion à la base de données:
Créer app.js
:
const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'user', password: 'password', database: 'database name' }); connection.connect((err) => { if (err) throw err; console.log('Connected!'); });
Exécuter node app.js
(ou utiliser nodemon
pour les redémarrages automatiques après les modifications du fichier).
Exécution des requêtes:
- lecture:
con.query('SELECT * FROM authors', (err,rows) => { ... });
récupère les données. - Création:
con.query('INSERT INTO authors SET ?', author, (err, res) => { ... });
Insérez les données. - Mise à jour:
con.query('UPDATE authors SET city = ? Where ID = ?', ['Leipzig', 3], (err, result) => { ... });
Met à jour les données. - Suppression:
con.query('DELETE FROM authors WHERE id = ?', [5], (err, result) => { ... });
Supprime les données.
Utilisation avancée:
- Procédures stockées: Créer des procédures stockées dans MySQL (par exemple,
sp_get_authors
) et appelez-les en utilisantcon.query('CALL sp_get_authors()',function(err, rows){...});
. - Échappement de l'entrée de l'utilisateur: Échappez toujours la saisie de l'utilisateur à l'aide de
mysql.escape()
ou des requêtes paramétrées pour empêcher l'injection SQL.
ORMS: Envisagez d'utiliser une séquelle de type ORM pour une productivité accrue, mais soyez conscient des implications potentielles de performance.
Conclusion:
Ce tutoriel fournit une base pour l'utilisation du module mysql
avec node.js. Explorez la documentation officielle pour des fonctionnalités plus avancées. Des alternatives comme node-mysql2
sont également disponibles.
FAQS: Les FAQ fournies sont déjà bien répondues dans le texte d'origine et ne nécessitent pas de modification supplémentaire.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Des questions et des solutions fréquemment posées pour l'impression de billets thermiques frontaux pour le développement frontal, l'impression de billets est une exigence commune. Cependant, de nombreux développeurs mettent en œuvre ...

JavaScript est la pierre angulaire du développement Web moderne, et ses principales fonctions incluent la programmation axée sur les événements, la génération de contenu dynamique et la programmation asynchrone. 1) La programmation axée sur les événements permet aux pages Web de changer dynamiquement en fonction des opérations utilisateur. 2) La génération de contenu dynamique permet d'ajuster le contenu de la page en fonction des conditions. 3) La programmation asynchrone garantit que l'interface utilisateur n'est pas bloquée. JavaScript est largement utilisé dans l'interaction Web, les applications à une page et le développement côté serveur, améliorant considérablement la flexibilité de l'expérience utilisateur et du développement multiplateforme.

Il n'y a pas de salaire absolu pour les développeurs Python et JavaScript, selon les compétences et les besoins de l'industrie. 1. Python peut être davantage payé en science des données et en apprentissage automatique. 2. JavaScript a une grande demande dans le développement frontal et complet, et son salaire est également considérable. 3. Les facteurs d'influence comprennent l'expérience, la localisation géographique, la taille de l'entreprise et les compétences spécifiques.

La discussion sur la réalisation des effets de défilement de parallaxe et d'animation des éléments dans cet article explorera comment réaliser le site officiel de Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ...

Les dernières tendances de JavaScript incluent la montée en puissance de TypeScript, la popularité des frameworks et bibliothèques modernes et l'application de WebAssembly. Les prospects futurs couvrent des systèmes de type plus puissants, le développement du JavaScript côté serveur, l'expansion de l'intelligence artificielle et de l'apprentissage automatique, et le potentiel de l'informatique IoT et Edge.

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en JavaScript? Lors du traitement des données, nous rencontrons souvent la nécessité d'avoir le même ID ...

Différents moteurs JavaScript ont des effets différents lors de l'analyse et de l'exécution du code JavaScript, car les principes d'implémentation et les stratégies d'optimisation de chaque moteur diffèrent. 1. Analyse lexicale: convertir le code source en unité lexicale. 2. Analyse de la grammaire: générer un arbre de syntaxe abstrait. 3. Optimisation et compilation: générer du code machine via le compilateur JIT. 4. Exécuter: Exécutez le code machine. Le moteur V8 optimise grâce à une compilation instantanée et à une classe cachée, SpiderMonkey utilise un système d'inférence de type, résultant en différentes performances de performances sur le même code.

Explorez la mise en œuvre de la fonction de glisser et de réglage du panneau de type VScode dans le frontal. Dans le développement frontal, comment implémenter un VScode comme ...
