आप रिकॉर्ड की सरणी को बल्क में सम्मिलित कर सकते हैं, लेकिन इससे पहले आपको इसे सरणियों की सरणी में बदलने की आवश्यकता हो सकती है
मैं कुछ इस तरह से एक सरणी प्राप्त करने के लिए सरणी कम करने का उपयोग करता हूं
let j=[
{Name: '', Id: 1},
{Name: '', Id: 2},
{Name: '', Id: 3},
{Name: '', Id: 4},
{Name: '', Id: 5},
{Name: '', Id: 6}
];
let values=j.reduce((o,a)=>{
let ini=[];
ini.push(a.Name);
ini.push(a.Id);
o.push(ini);
return o
},[])
console.log(values);
यह आउटपुट होगा
[["",1],["",2],["",3],["",4],["",5],["",6]]
अब mysql डेटाबेस में इन्सर्ट करना
const con=require('./mysql.js'); //mysql connectionin mysql.js
var sql = "INSERT INTO customers (name, id) VALUES ?";
con.query(sql, [values], function (err, result) { //pass values array (from above) directly here
if (err) throw err;
console.log("Number of records inserted: " + result.affectedRows);
});
});
इसलिए एकाधिक डेटा डालने का प्रारूप [[[a,b],[b,c],[d,k]]]
जैसा होना चाहिए
var Promise = require("bluebird");//for promises
const promisecon=Promise.promisifyAll(require('./mysql.js'));//
var sql = "INSERT INTO customers (name, id) VALUES ?";
promisecon.queryAsync(sql,[values]).then((result)=>{//bluebird identifies with Async
console.log(result);
}).catch(function(err){
console.log(err);
})
var sql = "INSERT INTO customers (name, id) VALUES ?";
async function build() {
try {
const result =await con.queryAsync(sql,[values]);
console.log(result);
} catch (err) {
// do something
}
}
build();