在Web开发中,数据库操作是不可或缺的一环。而Express框架因其轻量级、易用性等特点,成为了许多开发者的首选。本文将带你深入了解如何使用Express框架高效对接MySQL,轻松实现数据库操作。
一、准备工作
在开始之前,请确保你的环境中已安装以下软件:
- Node.js:Express框架是基于Node.js的,因此需要安装Node.js环境。
- MySQL:作为数据库,需要安装MySQL。
- Express框架:通过npm安装Express。
npm install express
二、连接MySQL数据库
要使用Express框架操作MySQL数据库,首先需要连接到数据库。我们可以使用mysql模块来实现。
const mysql = require('mysql');
// 创建数据库连接
const connection = mysql.createConnection({
host: 'localhost', // 数据库地址
user: 'root', // 数据库用户名
password: 'password', // 数据库密码
database: 'test' // 数据库名
});
// 连接数据库
connection.connect(err => {
if (err) {
console.error('连接数据库失败:', err.stack);
return;
}
console.log('连接数据库成功,连接ID:' + connection.threadId);
});
三、创建Express应用
接下来,我们需要创建一个简单的Express应用。
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, World!');
});
app.listen(3000, () => {
console.log('Express应用启动成功,访问 http://localhost:3000');
});
四、实现数据库操作
1. 查询数据
app.get('/data', (req, res) => {
const sql = 'SELECT * FROM users';
connection.query(sql, (err, results) => {
if (err) {
console.error('查询数据失败:', err.stack);
return;
}
res.json(results);
});
});
2. 插入数据
app.post('/data', (req, res) => {
const sql = 'INSERT INTO users SET ?';
const data = { username: '张三', age: 20 };
connection.query(sql, data, (err, result) => {
if (err) {
console.error('插入数据失败:', err.stack);
return;
}
res.json({ id: result.insertId });
});
});
3. 更新数据
app.put('/data/:id', (req, res) => {
const id = req.params.id;
const sql = 'UPDATE users SET ? WHERE id = ?';
const data = { username: '李四', age: 25 };
connection.query(sql, [data, id], (err, result) => {
if (err) {
console.error('更新数据失败:', err.stack);
return;
}
res.json({ affectedRows: result.affectedRows });
});
});
4. 删除数据
app.delete('/data/:id', (req, res) => {
const id = req.params.id;
const sql = 'DELETE FROM users WHERE id = ?';
connection.query(sql, id, (err, result) => {
if (err) {
console.error('删除数据失败:', err.stack);
return;
}
res.json({ affectedRows: result.affectedRows });
});
});
五、总结
通过以上步骤,我们已经成功使用Express框架对接MySQL数据库,并实现了基本的数据库操作。在实际开发中,你可以根据需求对代码进行扩展和优化。希望本文能帮助你快速上手Express框架与MySQL数据库的操作。
