您可以使用MySQL UPDATE查詢更新表的記錄。
MySQL更新record(s)表
MySQL更新表的所有記錄
考慮到由于人為錯(cuò)誤,在students表中插入的記錄標(biāo)記為74而不是84?,F(xiàn)在,我們將執(zhí)行一個(gè)MySQL更新查詢,該更新更新的marks列的值為84,其中值為74。
// 引入mysql模塊
var mysql = require('mysql');
// 創(chuàng)建具有所需詳細(xì)信息的連接變量
var con = mysql.createConnection({
host: "localhost", // 運(yùn)行mysql的服務(wù)器的IP地址
user: "arjun", // mysql數(shù)據(jù)庫的用戶名
password: "password", // 對(duì)應(yīng)的密碼
database: "studentsDB" // 使用指定的數(shù)據(jù)庫
});
// 建立與數(shù)據(jù)庫的連接。
con.connect(function(err) {
if (err) throw err;
// 如果連接成功
con.query("UPDATE students SET marks=84 WHERE marks=74", function (err, result, fields) {
// 如果在執(zhí)行上述查詢時(shí)出現(xiàn)任何錯(cuò)誤,則拋出錯(cuò)誤
if (err) throw err;
// 如果沒有錯(cuò)誤,您將得到結(jié)果
console.log(result);
});
});在終端中運(yùn)行以上程序
終端輸出
arjun@arjun-VPCEH26EN:~/workspace/nodejs$ node UpdateRecordsFiltered.js
OkPacket {
fieldCount: 0,
affectedRows: 3,
insertId: 0,
serverStatus: 34,
warningCount: 0,
message: '(Rows matched: 3 Changed: 3 Warnings: 0',
protocol41: true,
changedRows: 3 }考慮一種情況,由于某種原因取消了對(duì)學(xué)生的考試,您想重新進(jìn)行考試。因此,您希望將所有學(xué)生的分?jǐn)?shù)都更新為0。以下是Node.js MySQL UPDATE查詢示例,它顯示了如何更新表的所有記錄。
// 引入mysql模塊
var mysql = require('mysql');
// 創(chuàng)建具有所需詳細(xì)信息的連接變量
var con = mysql.createConnection({
host: "localhost", // 運(yùn)行mysql的服務(wù)器的IP地址
user: "arjun", // mysql數(shù)據(jù)庫的用戶名
password: "password", // 對(duì)應(yīng)的密碼
database: "studentsDB" // 使用指定的數(shù)據(jù)庫
});
// 建立與數(shù)據(jù)庫的連接。
con.connect(function(err) {
if (err) throw err;
// 如果連接成功
con.query("UPDATE students SET marks=84", function (err, result, fields) {
// 如果在執(zhí)行上述查詢時(shí)出現(xiàn)任何錯(cuò)誤,則拋出錯(cuò)誤
if (err) throw err;
// 如果沒有錯(cuò)誤,您將得到結(jié)果
console.log(result);
});
});觀察到查詢中沒有WHERE子句,因此選擇了所有記錄進(jìn)行更新過程。
在此Node.js教程– Node.js MySQL – UPDATE Table Query中,我們學(xué)習(xí)了根據(jù)條件更新記錄或更新表的所有記錄。