Node.js MySQL Delete Records


Node.js में MySQL table से आप किसी particular record या सभी records को एक साथ delete कर सकते हैं।


For Example अगर हमें , वो record delete करना है जिसकी primary id 5 है , तो कुछ इस तरह से delete करेंगे।

Copy Fullscreen Close Fullscreen
// import mysql package
const mysql_module = require('mysql');
const mysql = mysql_module.createConnection({
  host: "localhost",
  user: "root",
  password: null,
  database : "node_mysql"
});

// connect database.
mysql.connect(function(err) {
  if (err) throw err
  
  // delete query 
  let query = `DELETE FROM tbl_users WHERE id=5`;
  mysql.query(query, (error, result) => {
    if (error) throw error
    console.log("record deleted : ", result);
  })
});
C:\Users\HP\Desktop\workspace\nodejs>node app.js
record deletedpre> 

जब भी कोई MySQL query execute होती है , तो output में हमें OkPacket Object मिलता है। जिससे हमें पता चलता है कि query execute होने के बाद database में कोई change हुआ है या नहीं। जैसे कि ऊपर का example run करने पर कुछ इस तरह से output मिला। जिसमे affectedRows: 1 बताता है कि record delete हो चुका है।

OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 2,
  warningCount: 0,
  message: '',
  protocol41: true,
  changedRows: 0
}

बाकी MySQL queries की तरह तरह यह भी आप , direct values की जगह question mark (?) pass कर सकते हैं।
For Example :

Copy Fullscreen Close Fullscreen
// import mysql package
const mysql_module = require('mysql');
const mysql = mysql_module.createConnection({
  host: "localhost",
  user: "root",
  password: null,
  database : "node_mysql"
});

// connect database.
mysql.connect(function(err) {
  if (err) throw err
  
  // delete query 
  let query = `DELETE FROM tbl_users WHERE ?`;
  let where_obj = {
    id : 4
  }
  mysql.query(query, [where_obj], (error, result) => {
    if (error) throw error
    console.log("record deleted", result);
  })
});
C:\Users\HP\Desktop\workspace\nodejs>node app.js
record deleted

Node.js MySQL Delete All Rows

हालाँकि अगर आप सभी records को एक साथ delete करना चाहें , तो DELETE Query में where condition हटा दे।
For Example :

// connect database.
mysql.connect(function(err) {
  if (err) throw err
  
  // delete all rows from table
  let query = `DELETE FROM tbl_users;
  mysql.query(query, (error, result) => {
    if (error) throw error
    console.log("All records deleted");
  })
})

Node.js MySQL truncate Table

truncate query भी table से सभी rows को एक साथ remove करती है , लेकिन जब हम delete query run करते हैं तो Table Rows तो delete हो जाती हैं लेकिन Auto Increment field refresh नहीं होता है।


वही truncate करने पर Auto Increment field भी refresh हो जाता है , जिससे जब new record insert होता है तो Auto Increment field की value 1 से start होती है।
For Example :

mysql.connect(function(err) {
  if (err) throw err
  
  // truncate table
  let query = `TRUNCATE TABLE tbl_users;
  mysql.query(query, (error, result) => {
    if (error) throw error
    console.log("Table truncated");
  })
})

I Hope, आपको इस topic में समझ आया होगा कि MySQL table से records को कैसे delete करते हैं।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook