在Web开发中,Express框架因其简洁、灵活和高效而受到许多开发者的喜爱。而MySQL作为一款流行的开源关系型数据库,其稳定性和强大的功能使其成为许多Web应用的首选。本文将带你一步步学会如何使用Express框架来操作MySQL数据库,让你轻松搞定数据库操作。
一、准备工作
在开始之前,请确保你已经安装了以下软件:
- Node.js:Express框架是基于Node.js的,因此需要安装Node.js环境。
- MySQL:安装MySQL数据库。
- npm:Node.js的包管理器,用于安装Express和其他依赖包。
二、创建Express项目
- 创建一个新文件夹,例如
express-mysql。 - 打开命令行窗口,进入该文件夹。
- 运行
npm init -y命令初始化项目。 - 运行
npm install express mysql命令安装Express和MySQL模块。
三、连接MySQL数据库
在app.js文件中,我们需要连接MySQL数据库。以下是连接MySQL数据库的示例代码:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '123456',
database: 'test'
});
connection.connect(err => {
if (err) {
console.error('连接数据库失败:' + err.stack);
return;
}
console.log('连接数据库成功,连接ID ' + connection.threadId);
});
四、创建数据库表
在MySQL数据库中创建一个名为users的表,包含id、username和password三个字段。以下是创建表的SQL语句:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL
);
五、操作数据库
在Express项目中,我们可以使用connection.query()方法来执行SQL语句。以下是一些常用的数据库操作示例:
1. 添加数据
const addData = () => {
const username = 'zhangsan';
const password = '123456';
const sql = 'INSERT INTO users (username, password) VALUES (?, ?)';
connection.query(sql, [username, password], (err, results) => {
if (err) {
console.error('添加数据失败:' + err.stack);
return;
}
console.log('添加数据成功,影响的行数:' + results.affectedRows);
});
};
2. 查询数据
const queryData = () => {
const sql = 'SELECT * FROM users';
connection.query(sql, (err, results) => {
if (err) {
console.error('查询数据失败:' + err.stack);
return;
}
console.log('查询数据成功:');
console.log(results);
});
};
3. 更新数据
const updateData = () => {
const id = 1;
const username = 'lisi';
const password = '654321';
const sql = 'UPDATE users SET username = ?, password = ? WHERE id = ?';
connection.query(sql, [username, password, id], (err, results) => {
if (err) {
console.error('更新数据失败:' + err.stack);
return;
}
console.log('更新数据成功,影响的行数:' + results.affectedRows);
});
};
4. 删除数据
const deleteData = () => {
const id = 1;
const sql = 'DELETE FROM users WHERE id = ?';
connection.query(sql, [id], (err, results) => {
if (err) {
console.error('删除数据失败:' + err.stack);
return;
}
console.log('删除数据成功,影响的行数:' + results.affectedRows);
});
};
六、关闭数据库连接
在项目结束时,我们需要关闭数据库连接。以下是关闭连接的示例代码:
connection.end(err => {
if (err) {
console.error('关闭数据库连接失败:' + err.stack);
return;
}
console.log('关闭数据库连接成功');
});
七、总结
通过本文的学习,相信你已经掌握了使用Express框架操作MySQL数据库的方法。在实际项目中,你可以根据需求进行扩展和优化。祝你编程愉快!
