1. 安装 mysql2 驱动程序:
在你的 Node.js 项目中安装 mysql2 驱动程序:
npm install mysql2
2. 连接到 MySQL 数据库:
const mysql = require('mysql2');
// 创建数据库连接
const connection = mysql.createConnection({
host: 'your-database-host',
user: 'your-username',
password: 'your-password',
database: 'your-database-name'
});
// 连接到数据库
connection.connect((err) => {
if (err) {
console.error('Error connecting to MySQL:', err);
return;
}
console.log('Connected to MySQL database');
});
请将上述代码中的 your-database-host、your-username、your-password 和 your-database-name 替换为你的 MySQL 数据库的实际信息。
3. 执行 SQL 查询:
// 查询示例:选择所有用户
connection.query('SELECT * FROM users', (err, results, fields) => {
if (err) {
console.error('Error executing query:', err);
return;
}
// 处理查询结果
console.log('Query results:', results);
});
// 关闭数据库连接
connection.end();
在实际应用中,你可能会执行更复杂的查询,包括参数化查询、插入、更新等。
4. 使用连接池:
对于生产环境,建议使用连接池来管理数据库连接,以提高性能和效率。以下是使用连接池的示例:
const mysql = require('mysql2');
// 创建数据库连接池
const pool = mysql.createPool({
connectionLimit: 10, // 限制连接数
host: 'your-database-host',
user: 'your-username',
password: 'your-password',
database: 'your-database-name'
});
// 从连接池中获取连接
pool.getConnection((err, connection) => {
if (err) {
console.error('Error getting connection from pool:', err);
return;
}
// 执行查询等操作
connection.query('SELECT * FROM users', (queryErr, results, fields) => {
if (queryErr) {
console.error('Error executing query:', queryErr);
return;
}
// 处理查询结果
console.log('Query results:', results);
// 释放连接回连接池
connection.release();
});
});
使用连接池可以更好地管理数据库连接,避免每次查询都手动创建和关闭连接。
这是一个基本的使用 MySQL 数据库的示例。在实际应用中,你可能需要更多的错误处理、参数化查询、事务处理等。确保根据项目的需求使用适当的安全措施,比如防止 SQL 注入攻击。
转载请注明出处:http://www.pingtaimeng.com/article/detail/13174/Node.js