要使用Node.js连接MySQL进行增删改查操作,可以使用一个称为mysql
的Node.js模块。以下是一个简单的例子,演示了如何使用Node.js连接MySQL并执行基本的增删改查操作。
首先,确保已经安装了Node.js和MySQL,并在项目中安装了mysql
模块。可以使用以下命令安装:
npm install mysql
然后,你可以使用以下示例代码:
const mysql = require('mysql');
// 创建数据库连接配置
const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'your_database_name'
});
// 连接到数据库
connection.connect((err) => {
if (err) {
console.error('Error connecting to MySQL: ' + err.stack);
return;
}
console.log('Connected to MySQL as id ' + connection.threadId);
});
// 插入数据
const insertData = () => {
const insertQuery = 'INSERT INTO your_table_name (column1, column2) VALUES (?, ?)';
const values = ['value1', 'value2'];
connection.query(insertQuery, values, (err, results) => {
if (err) throw err;
console.log('Inserted ' + results.affectedRows + ' row(s)');
});
};
// 更新数据
const updateData = () => {
const updateQuery = 'UPDATE your_table_name SET column1 = ? WHERE column2 = ?';
const values = ['new_value', 'some_condition'];
connection.query(updateQuery, values, (err, results) => {
if (err) throw err;
console.log('Updated ' + results.affectedRows + ' row(s)');
});
};
// 查询数据
const selectData = () => {
const selectQuery = 'SELECT * FROM your_table_name';
connection.query(selectQuery, (err, results) => {
if (err) throw err;
console.log('Selected ' + results.length + ' row(s)');
console.log(results);
});
};
// 删除数据
const deleteData = () => {
const deleteQuery = 'DELETE FROM your_table_name WHERE some_condition';
connection.query(deleteQuery, (err, results) => {
if (err) throw err;
console.log('Deleted ' + results.affectedRows + ' row(s)');
});
};
// 执行操作
insertData();
updateData();
selectData();
deleteData();
// 断开连接
connection.end((err) => {
if (err) {
console.error('Error disconnecting from MySQL: ' + err.stack);
return;
}
console.log('Disconnected from MySQL');
});
注意替换代码中的your_username
、your_password
、your_database_name
、your_table_name
等字段为你自己的实际数据库信息。另外再根据你自己的表结构,调整插入、更新、查询和删除操作中的SQL语句和参数。
请注意,上述代码仅供参考,在生产环境中,可能还需要考虑使用连接池、处理错误、以及其他安全性和性能方面的考虑。