下面是详细的讲解“Node.js操作MySQL实现增删改查的实例”的完整攻略。
下面是详细的讲解“Node.js操作MySQL实现增删改查的实例”的完整攻略。
1.安装必要的模块
要使用Node.js操作MySQL,需要安装node.js的mysql模块。可以使用npm安装:
npm install mysql
2.连接MySQL数据库
在连接MySQL之前,需要先安装并启动MySQL数据库,同时还需要在MySQL中创建数据库和数据表。以下是创建数据库和数据表的示例SQL语句:
CREATE DATABASE nodejsdb;
USE nodejsdb;
CREATE TABLE user(
id INT(11) AUTO_INCREMENT,
name VARCHAR(50),
age INT(11),
PRIMARY KEY(id)
);
接着可以使用以下代码连接MySQL数据库:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '密码',
database: 'nodejsdb'
});
connection.connect((error) => {
if (error) throw error;
console.log('已成功连接到MySQL数据库!');
});
3.实现增加(INSERT)操作
以下是插入一条数据的示例代码:
const user = { name: '张三', age: 20 };
connection.query('INSERT INTO user SET ?', user, (error, results, fields) => {
if (error) throw error;
console.log('已成功插入一条数据。');
console.log('插入的数据编号为:', results.insertId);
});
4.实现查询(SELECT)操作
以下是查询数据的示例代码:
connection.query('SELECT * FROM user', (error, results, fields) => {
if (error) throw error;
console.log('查询到的数据如下:');
console.log(results);
});
5.实现删除(DELETE)操作
以下是删除数据的示例代码:
const id = 1;
connection.query('DELETE FROM user WHERE id = ?', id, (error, results, fields) => {
if (error) throw error;
console.log(results.affectedRows + ' 条数据已成功删除。');
});
6.实现更新(UPDATE)操作
以下是更新数据的示例代码:
const id = 2;
const user = { name: '李四', age: 25 };
connection.query('UPDATE user SET ? WHERE id = ?', [user, id], (error, results, fields) => {
if (error) throw error;
console.log(results.affectedRows + ' 条数据已成功更新。');
});
示例说明
下面给出两个示例,分别演示了如何从MySQL中查询并展示数据以及如何插入新的数据。
示例一:查询并展示数据
下面是一个简单的 Node.js 程序,它查询一个表中所有的数据,并将查询结果转换成HTML格式展示在网页上:
const http = require('http');
const mysql = require('mysql');
const connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '密码',
database : 'testdb'
});
connection.connect((err) => {
if (err) throw err;
console.log('已成功连接到MySQL数据库!');
});
http.createServer((request, response) => {
response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
connection.query('SELECT * FROM user', (error, results, fields) => {
if (error) throw error;
let html = '<html><head><title>用户列表</title></head><body><table>';
html += '<tr><th>编号</th><th>姓名</th><th>年龄</th></tr>';
for (const user of results) {
html += `<tr><td>${user.id}</td><td>${user.name}</td><td>${user.age}</td></tr>`;
}
html += '</table></body></html>';
response.write(html);
response.end();
});
}).listen(8080);
console.log('服务器已经启动,监听 8080 端口。');
从浏览器访问 http://localhost:8080/ 即可看到查询结果。
示例二:插入新的数据
下面是一个简单的 Node.js 程序,它会向一个表中插入一条新的数据:
const mysql = require('mysql');
const connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '密码',
database : 'testdb'
});
connection.connect((err) => {
if (err) throw err;
console.log('已成功连接到MySQL数据库!');
});
const user = { name: '王五', age: 30 };
connection.query('INSERT INTO user SET ?', user, (error, results, fields) => {
if (error) throw error;
console.log('已成功插入一条数据。');
console.log('插入的数据编号为:', results.insertId);
});
connection.end();
运行该程序即可插入一条新的数据到user表中。在命令行终端中执行 node insert.js 即可。
本文标题为:nodejs操作mysql实现增删改查的实例
- Mysql修改字段类型、长度及添加删除列实例代码 2023-07-26
- CentOS 7.9服务器Java部署环境配置的过程详解 2023-12-05
- 解决ORA-12170:TNS connect timeout occurred问题 2023-12-05
- VS连接SQL server数据库及实现基本CRUD操作 2023-07-29
- Redis实现之事件 2023-09-13
- Redis五种数据结构简介 2023-09-12
- Redis实现之数据库(三) 2023-09-13
- Redis使用Bitmap的方法实现 2023-07-12
- MySQL InnoDB架构的相关总结 2023-12-19
- 自定义函数实现单词排序并运用于PostgreSQL(实现代码) 2023-07-20