Maison > base de données > tutoriel mysql > Comment puis-je exécuter plusieurs instructions SQL dans une requête MySQL à un seul nœud ?

Comment puis-je exécuter plusieurs instructions SQL dans une requête MySQL à un seul nœud ?

Susan Sarandon
Libérer: 2024-12-20 09:32:11
original
636 Les gens l'ont consulté

How Can I Execute Multiple SQL Statements in a Single Node-MySQL Query?

Exécution de plusieurs instructions SQL dans une requête unique à l'aide de node-mysql

Vous avez mentionné avoir rencontré une erreur lors de l'exécution de plusieurs instructions DELETE dans une seule requête à l'aide nœud-mysql. Pour résoudre ce problème, vous devez activer la prise en charge de plusieurs instructions dans votre configuration de connexion.

Activation des requêtes à instructions multiples

La documentation node-mysql explique que la prise en charge de plusieurs instructions est initialement désactivé pour des raisons de sécurité, empêchant les attaques par injection SQL. Pour l'activer, ajoutez la ligne suivante à votre configuration de connexion :

var connection = mysql.createConnection({multipleStatements: true});
Copier après la connexion

Executing Multiple Statements

Une fois plusieurs instructions activées, vous pouvez exécuter une requête avec plusieurs instructions en séparant chaque instruction par un point-virgule (;). Le résultat sera un tableau contenant un tableau pour chaque instruction.

Exemple

Considérez le code suivant :

connection.query('DELETE FROM user_tables WHERE name = 'Testbase';DELETE FROM user_tables_structure WHERE parent_table_name = 'Testbase';DELETE FROM user_tables_rules WHERE parent_table_name = 'Testbase';DELETE FROM user_tables_columns WHERE parent_table_name = 'Testbase';', [1, 2], function(err, results) {
  if (err) throw err;

  // `results` is an array with one element for every statement in the query:
  console.log(results[0]); // [{1: 1}]
  console.log(results[1]); // [{2: 2}]
});
Copier après la connexion

En activant plusieurs instructions et en séparant correctement les instructions par des points-virgules, vous devriez pouvoir exécuter toutes vos opérations DELETE en une seule requête.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal