Node.js+MySQL更新数据
在本教程中,您将学习如何从node.js应用程序更新MySQL数据库中的数据。
要从node.js应用程序更新数据,请使用以下步骤:
- 连接到MySQL数据库服务器。
- 通过在
Connection
对象上调用query()
方法来执行UPDATE语句。 - 关闭数据库连接。
要连接到MySQL数据库,我们将使用以下config.js
模块,其中包含MySQL数据库服务器的必要信息,包括主机,用户,密码和数据库。
let config = {
host : 'localhost',
user : 'root',
password: '123456',
database: 'todoapp'
};
module.exports = config;
更新数据示例
以下update.js
程序根据特定的ID来更新托管的状态。
let mysql = require('mysql');
let config = require('./config.js');
let connection = mysql.createConnection(config);
// update statment
let sql = `UPDATE todos
SET completed = ?
WHERE id = ?`;
let data = [false, 1];
// execute the UPDATE statement
connection.query(sql, data, (error, results, fields) => {
if (error){
return console.error(error.message);
}
console.log('Rows affected:', results.affectedRows);
});
connection.end();
在这个例子中,我们在UPDATE
语句中使用了占位符(?
)。
当通过在连接对象上调用query()
方法执行UPDATE
语句时,以数组的形式将数据传递给UPDATE
语句。 占位符将被数组中的值替换为数组。 在这个例子中,将id
为1
的那条记录的completed
列将被设置为false
。
回调函数的results
参数有affectedRows
属性,返回UPDATE
语句更新的行数。
在执行程序之前,请查看todos
表中id
为1
的行记录信息:
mysql> SELECT * FROM todos WHERE id = 1;
+----+-------------------------------+-----------+
| id | title | completed |
+----+-------------------------------+-----------+
| 1 | Learn how to insert a new row | 1 |
+----+-------------------------------+-----------+
1 row in set (0.00 sec)
现在,我们来运行上面update.js
程序。
F:\worksp\mysql\nodejs\nodejs-connect>node update.js
openssl config failed: error:02001003:system library:fopen:No such process
Rows affected: 1
程序返回一条消息,指示受影响的行数为1
, 我们可以在数据库中再次查看它,如下所示:
mysql> SELECT * FROM todos WHERE id = 1;
+----+-------------------------------+-----------+
| id | title | completed |
+----+-------------------------------+-----------+
| 1 | Learn how to insert a new row | 0 |
+----+-------------------------------+-----------+
1 row in set (0.00 sec)
您可以看到,completed
列中的值已更新为0
,在node.js
中为false
。
在本教程中,我们向您展示了如何从node.js
应用程序更新MySQL中的数据。
易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:”教程” 选择相关教程阅读或直接访问:http://m.yiibai.com 。
上一篇:MySQL+Python连接和操作
下一篇:哥,这回真没有了
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。
- Java技术群: 227270512 (人数:2000,免费:否)
- MySQL/SQL群: 418407075 (人数:2000,免费:否)
- 大数据开发群: 655154550 (人数:2000,免费:否)
- Python技术群: 287904175 (人数:2000,免费:否)
- 人工智能深度学习: 456236082 (人数:2000,免费:否)
- 测试工程师(新群): 415553199 (人数:1000,免费:否)
- 前端技术群(新群): 410430016 (人数:1000,免费:是)
- C/C++技术(新群): 629264796 (人数:1000,免费:是)
- Node.js技术(新群): 621549808 (人数:1000,免费:是)
- PostgreSQL数据库(新群): 539504187 (人数:1000,免费:是)
- Linux技术: 479429477 (人数:2000,免费:否)
- PHP开发者: 460153241 (人数:2000,免费:否)
- Oracle数据库: 175248146 (人数:2000,免费:否)
- C#/ASP.Net开发者: 579821706 (人数:2000,免费:是)
- 数据分析师: 397883996 (人数:2000,免费:是)R语言,Matlab语言等技术