Nodejs 有没有操作MySql的Demo啊
Nodejs 有没有操作MySql的Demo啊
各位大神有没有操作MySql的Demo啊,简单点的就行,不要特别复杂的,就直接是增删改查的操作就行,我都是看的MongoDB的,操作MySQL就不行了!谢谢各位指点下,
7 回复
当然可以!下面是一个简单的 Node.js 操作 MySQL 的 Demo 示例。这个示例将展示如何进行基本的 CRUD(创建、读取、更新、删除)操作。
首先,你需要安装 mysql
模块。可以通过 npm 安装:
npm install mysql
接下来是示例代码:
const mysql = require('mysql');
// 创建一个数据库连接池
const pool = mysql.createPool({
host: 'localhost',
user: 'root',
password: 'your_password',
database: 'test_db'
});
// 增加数据
function insertData(data, callback) {
pool.query('INSERT INTO users SET ?', data, (error, results) => {
if (error) throw error;
console.log('Data inserted successfully');
callback(results.insertId);
});
}
// 查询数据
function selectData(callback) {
pool.query('SELECT * FROM users', (error, results) => {
if (error) throw error;
console.log('Data selected successfully');
callback(results);
});
}
// 更新数据
function updateData(id, newData, callback) {
pool.query('UPDATE users SET ? WHERE id = ?', [newData, id], (error, results) => {
if (error) throw error;
console.log('Data updated successfully');
callback(results.affectedRows);
});
}
// 删除数据
function deleteData(id, callback) {
pool.query('DELETE FROM users WHERE id = ?', [id], (error, results) => {
if (error) throw error;
console.log('Data deleted successfully');
callback(results.affectedRows);
});
}
// 示例数据
const userData = { name: 'John Doe', email: 'john@example.com' };
// 调用函数
insertData(userData, (id) => {
console.log('Inserted ID:', id);
// 查询数据
selectData((data) => {
console.log('Selected Data:', data);
// 更新数据
const updatedData = { name: 'Jane Doe' };
updateData(id, updatedData, (affectedRows) => {
console.log('Affected Rows:', affectedRows);
// 删除数据
deleteData(id, (affectedRows) => {
console.log('Affected Rows:', affectedRows);
});
});
});
});
解释
- 创建连接池:使用
mysql.createPool
创建一个连接池来管理与数据库的连接。 - 插入数据:通过
pool.query
执行 SQL 插入语句,并传入要插入的数据。 - 查询数据:执行
SELECT
语句来获取所有用户数据。 - 更新数据:通过
UPDATE
语句更新特定用户的记录。 - 删除数据:通过
DELETE
语句删除特定用户的记录。
这个示例展示了如何使用 Node.js 进行基本的 MySQL 操作。你可以根据实际需求调整数据库配置和表结构。希望这对你有帮助!
我只想对您说三个字: 非常感谢您,我已经成功了!
你这个会失败吧,end不应该在回调里面?
11个字,不算标点符号
这个不错
当然可以。Node.js 操作 MySQL 的库有很多,其中较为常用的是 mysql
和 sequelize
。这里我会使用 mysql
库来演示基本的增删改查操作。
首先,你需要安装 mysql
库
npm install mysql
示例代码
下面是一些简单的 CRUD 操作示例:
1. 连接到 MySQL 数据库
const mysql = require('mysql');
// 创建数据库连接
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'yourpassword',
database: 'testdb'
});
// 连接数据库
connection.connect((err) => {
if (err) throw err;
console.log('Connected!');
});
2. 插入数据(Create)
const sql = 'INSERT INTO users (name, email) VALUES (?, ?)';
const values = ['Alice', 'alice@example.com'];
connection.query(sql, values, (err, result) => {
if (err) throw err;
console.log(`Row inserted with ID: ${result.insertId}`);
});
3. 查询数据(Read)
const sql = 'SELECT * FROM users WHERE id = ?';
const id = 1;
connection.query(sql, [id], (err, results) => {
if (err) throw err;
console.log(results);
});
4. 更新数据(Update)
const sql = 'UPDATE users SET name = ?, email = ? WHERE id = ?';
const values = ['Bob', 'bob@example.com', 1];
connection.query(sql, values, (err, result) => {
if (err) throw err;
console.log(`${result.changedRows} row(s) updated`);
});
5. 删除数据(Delete)
const sql = 'DELETE FROM users WHERE id = ?';
const id = 1;
connection.query(sql, [id], (err, result) => {
if (err) throw err;
console.log(`${result.affectedRows} row(s) deleted`);
});
注意事项
- 确保你的 MySQL 服务器正在运行,并且数据库和表已经创建。
- 替换上述代码中的数据库连接信息和表名、字段名等为你自己的环境设置。
- 使用完数据库后记得关闭连接:
connection.end();
希望这些代码对你有帮助!