English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

NodeJS 基础教程

NodeJS Express.js

NodeJS 缓冲&URL;

NodeJS MySql

NodeJS MongoDB

NodeJS 文件(FS)

NodeJS 其他

Objet de résultat MySQL dans Node.js

在Node.js中执行MySQL查询时,名为Result Object的对象将返回到回调函数。结果对象包含提供有关MySQL Server中查询执行信息的结果集或属性。

Node.js MySQL结果对象

结果对象的内容取决于对MySQL Server进行的SQL查询。下表内容描述了查询的结果对象,例如选择,插入,更新和删除。

MySQL 查询结果对象
SELECT FROM包含记录的结果集
INSERT INTO包含执行状态的对象
UPDATE包含执行状态的对象
DELETE FROM

包含执行状态的对象

我们将在以下示例的帮助下了解如何访问结果集中记录的属性以及如何访问执行状态的属性。

  • MySQL SELECT FROM 查询– 访问ResultSet

  • MySQL INSERT INTO 查询–访问结果对象的属性

  • MySQL UPDATE 查询-访问结果对象的属性

  • MySQL DELETE FROM 查询-访问结果对象的属性

示例– MySQL SELECT FROM查询 – 访问ResultSet

我们可以使用点(.)运算符将结果集中的记录作为数组和记录的属性来访问。

// Node.js MySQL结果对象示例
// Inclure le module mysql
var mysql = require('mysql'); 
 
// Créer une variable de connexion avec les informations détaillées nécessaires
var con = mysql.createConnection({ 
  host: "localhost", // adresse IP du serveur où s'exécute MySQL
  user: "arjun", // nom d'utilisateur de la base de données MySQL
  mot de passe: "mot de passe", // le mot de passe correspondant
  database: "studentsDB" // Utilisez la base de données spécifiée
 }); 
 
// Établir une connexion avec la base de données
con.connect(function(err) { 
  if (err) throw err; 
  // Si la connexion est réussie
  con.query("SELECT * FROM students", function (err, result, fields) { 
    // Si une erreur se produit lors de l'exécution de la requête ci-dessus, une erreur est lancée
    if (err) throw err; 
    // Si il n'y a pas d'erreur, vous obtiendrez le résultat
    // 对结果中的所有行进行迭代
    Object.keys(result).forEach(function(key) { 
      var row = result[key]; 
      console.log(row.name) 
    }); 
  }); 
 });

Exécutez le programme ci-dessus avec le noeud dans le terminal

Sortie du terminal

arjun@arjun-VPCEH26EN:~/espace de travail/nodejs$ node selectUseResultObject.js 
John
Arjun
Prasanth
Adarsh
Raja
Sai
Ross
Monica
Lee
Bruce
Sukumar

Exemple - Requête INSERT INTO MySQL

Nous pouvons utiliser l'opérateur DOT (.) pour accéder aux propriétés de l'objet de résultat.

// Inclure le module mysql
var mysql = require('mysql'); 
 
// Créer une variable de connexion avec les informations détaillées nécessaires
var con = mysql.createConnection({ 
  host: "localhost", // adresse IP du serveur où s'exécute MySQL
  user: "arjun", // nom d'utilisateur de la base de données MySQL
  mot de passe: "mot de passe", // le mot de passe correspondant
  database: "studentsDB" // Utilisez la base de données spécifiée
 }); 
 
// Établir une connexion avec la base de données
con.connect(function(err) { 
  if (err) throw err; 
  // Si la connexion est réussie
  var records = [ 
    ['Jack', 16, 82], 
    ['Priya', 17, 88], 
    ['Amy', 15, 74] 
  ]; 
  con.query("INSERT INTO students (name,rollno,marks) VALUES ?", [records], function(err, result, fields) { 
    // Si une erreur se produit lors de l'exécution de la requête ci-dessus, une erreur est lancée
    if (err) throw err; 
    // Si il n'y a pas d'erreur, vous obtiendrez le résultat
    console.log(result); 
    console.log("Nombre de lignes affectées : ", + result.affectedRows); 
    console.log("Nombre d'enregistrements affectés avec avertissement : ", + result.warningCount); 
    console.log("Message de serveur MySQL : ", + result.message); 
  }); 
 });

Exécutez le programme ci-dessus avec le noeud dans le terminal

Sortie du terminal

arjun@arjun-VPCEH26EN:~/espace de travail/nodejs$ node MultipleInsertExample.js 
OkPacket { 
  fieldCount: 0, 
  affectedRows: 3, 
  insertId: 0, 
  serverStatus: 2, 
  warningCount: 0, 
  message: '&Enregistrements: 3  Doublons: 0     Avertissements: 0', 
  protocole41: true, 
  changedRows: 0 } 
Nombre de lignes affectées : 3
Nombre d'enregistrements affectés avec avertissement : 0
Message du serveur MySQL : &Enregistrements: 3 Doublons: 0 Avertissements: 0

Exemple - Requête UPDATE MySQL

Nous pouvons utiliser l'opérateur DOT (.) pour accéder aux propriétés de l'objet de résultat.

// Inclure le module mysql
var mysql = require('mysql'); 
 
// Créer une variable de connexion avec les informations détaillées nécessaires
var con = mysql.createConnection({ 
  host: "localhost", // adresse IP du serveur où s'exécute MySQL
  user: "arjun", // nom d'utilisateur de la base de données MySQL
  mot de passe: "mot de passe", // le mot de passe correspondant
  database: "studentsDB" // Utilisez la base de données spécifiée
 }); 
 
// Établir une connexion avec la base de données
con.connect(function(err) { 
  if (err) throw err; 
  // Si la connexion est réussie
  con.query("UPDATE students SET marks=84 Où marks=74, function (err, result, fields) { 
    // Si une erreur se produit lors de l'exécution de la requête ci-dessus, une erreur est lancée
    if (err) throw err; 
    // Si il n'y a pas d'erreur, vous obtiendrez le résultat
    console.log(result); 
    console.log("Nombre de lignes affectées : ", + result.affectedRows); 
    console.log("Nombre d'enregistrements affectés avec avertissement : ", + result.warningCount); 
    console.log("Message de serveur MySQL : ", + result.message); 
  }); 
 });

Exécutez le programme ci-dessus avec le noeud dans le terminal

Sortie du terminal

arjun@arjun-VPCEH26EN:~/espace de travail/nodejs$ node UpdateRecordsFiltered.js 
OkPacket { 
  fieldCount: 0, 
  affectedRows: 3, 
  insertId: 0, 
  serverStatus: 34, 
  warningCount: 0, 
  message: '(Lignes correspondantes: 3  Modifié: 3  Avertissements: 0', 
  protocole41: true, 
  changedRows: 3 } 
Nombre de lignes affectées : 3
Nombre d'enregistrements affectés avec avertissement : 0
Message du serveur MySQL : (Lignes correspondantes: 3 Modifié: 3 Avertissements: 0

Exemple - Suppression de enregistrements filtrés MySQL

Nous pouvons utiliser l'opérateur DOT (.) pour accéder aux propriétés de l'objet de résultat.

// Inclure le module mysql
var mysql = require('mysql'); 
 
// Créer une variable de connexion avec les informations détaillées nécessaires
var con = mysql.createConnection({ 
  host: "localhost", // adresse IP du serveur où s'exécute MySQL
  user: "arjun", // nom d'utilisateur de la base de données MySQL
  mot de passe: "mot de passe", // le mot de passe correspondant
  database: "studentsDB" // Utilisez la base de données spécifiée
 }); 
 
// Connectez-vous à la base de données.
con.connect(function(err) { 
  if (err) throw err; 
  // Si la connexion est réussie
  con.query("DELETE FROM students WHERE rollno>10, function (err, result, fields) { 
    // Si une erreur se produit lors de l'exécution de la requête ci-dessus, une erreur est lancée
    if (err) throw err; 
    // Si il n'y a pas d'erreur, vous obtiendrez le résultat
    console.log(result); 
    console.log("Nombre de lignes affectées : ", + result.affectedRows); 
    console.log("Nombre d'enregistrements affectés avec avertissement : ", + result.warningCount); 
    console.log("Message de serveur MySQL : ", + result.message); 
  }); 
 });

Exécutez le programme ci-dessus avec le noeud dans le terminal

Sortie du terminal

arjun@arjun-VPCEH26EN:~/espace de travail/nodejs$ node deleteRecordsFiltered.js 
OkPacket { 
  fieldCount: 0, 
  affectedRows: 6, 
  insertId: 0, 
  serverStatus: 34, 
  warningCount: 0, 
  message: '', 
  protocole41: true, 
  changedRows: 0 } 
Nombre de lignes affectées : 6
Nombre d'enregistrements affectés avec avertissement : 0
Message de serveur MySQL :

Conclusion

Dans ce tutoriel Node.js - Node.js MySQL - nous avons appris à accéder aux enregistrements du jeu de résultats et avons consulté les propriétés de l'objet de résultats contenant des informations sur l'exécution de la requête par exemple.