首页 / 大宽带服务器 / 正文
使用 Node.js 连接 MySQL,一步步指南,node连接mysql数据库后如何执行代码

Time:2025年01月06日 Read:6 评论:42 作者:y21dr45

在现代的 Web 开发中,Node.js 和 MySQL 是两个非常流行的技术,Node.js 是一个基于 JavaScript 的服务器端平台,而 MySQL 是一个广泛使用的关系型数据库管理系统,本文将详细介绍如何在 Node.js 项目中连接和使用 MySQL。

使用 Node.js 连接 MySQL,一步步指南,node连接mysql数据库后如何执行代码

1. 准备工作

在开始之前,你需要确保你的系统已经安装了 Node.js 和 MySQL,如果还没有安装,可以通过以下命令进行安装:

安装 Node.js:

  curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
  sudo apt-get install -y nodejs

安装 MySQL:

  sudo apt-get update
  sudo apt-get install mysql-server

安装完成后,启动 MySQL 服务并设置 root 用户密码:

sudo systemctl start mysql
sudo mysql_secure_installation

2. 创建 MySQL 数据库和表

登录到 MySQL 控制台并创建一个数据库和表:

mysql -u root -p
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255) NOT NULL,
    email VARCHAR(255) NOT NULL
);

3. 安装 MySQL Node.js 驱动程序

在你的项目目录中,初始化一个新的 Node.js 项目并安装mysql 模块:

npm init -y
npm install mysql

4. 连接到 MySQL 数据库

在项目的根目录下创建一个文件,例如app.js,并在其中编写连接 MySQL 数据库的代码。

const mysql = require('mysql');
// 创建与数据库的连接
const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'yourpassword', // 替换为你的 MySQL root 密码
    database: 'testdb'
});
// 连接到数据库
connection.connect((err) => {
    if (err) {
        console.error('Error connecting to the database:', err.stack);
        return;
    }
    console.log('Connected to database with ID:', connection.threadId);
});
// 关闭连接
connection.end();

5. 执行 SQL 查询

现在你可以使用这个连接来执行 SQL 查询,以下是一些常见的操作示例:

插入数据

const post = { name: 'John Doe', email: 'john@example.com' };
connection.query('INSERT INTO users SET ?', post, (err, result) => {
    if (err) throw err;
    console.log('Inserted record ID:', result.insertId);
});

查询数据

connection.query('SELECT * FROM users', (err, results) => {
    if (err) throw err;
    console.log('Query Results:', results);
});

更新数据

const updateData = { email: 'john.doe@example.com' };
const where = { id: 1 };
connection.query('UPDATE users SET ? WHERE ?', [updateData, where], (err, result) => {
    if (err) throw err;
    console.log('Updated rows count:', result.affectedRows);
});

删除数据

const deleteWhere = { id: 1 };
connection.query('DELETE FROM users WHERE ?', deleteWhere, (err, result) => {
    if (err) throw err;
    console.log('Deleted rows count:', result.affectedRows);
});

6. 错误处理和资源管理

在实际的开发中,错误处理和资源管理是非常重要的,确保在出现错误时能够正确处理,并且在不需要时释放资源,你可以在程序结束时调用connection.end() 来关闭连接。

connection.end((err) => {
    if (err) {
        return console.error('Error ending the connection:', err.stack);
    }
    console.log('Connection closed.');
});

7. 完整示例代码

以下是一个完整的示例代码,展示了如何在一个 Node.js 应用中连接和使用 MySQL:

const mysql = require('mysql');
// 创建与数据库的连接
const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'yourpassword', // 替换为你的 MySQL root 密码
    database: 'testdb'
});
// 连接到数据库
connection.connect((err) => {
    if (err) {
        console.error('Error connecting to the database:', err.stack);
        return;
    }
    console.log('Connected to database with ID:', connection.threadId);
});
// 插入数据
const post = { name: 'John Doe', email: 'john@example.com' };
connection.query('INSERT INTO users SET ?', post, (err, result) => {
    if (err) throw err;
    console.log('Inserted record ID:', result.insertId);
});
// 查询数据
connection.query('SELECT * FROM users', (err, results) => {
    if (err) throw err;
    console.log('Query Results:', results);
});
// 更新数据
const updateData = { email: 'john.doe@example.com' };
const where = { id: 1 };
connection.query('UPDATE users SET ? WHERE ?', [updateData, where], (err, result) => {
    if (err) throw err;
    console.log('Updated rows count:', result.affectedRows);
});
// 删除数据
const deleteWhere = { id: 1 };
connection.query('DELETE FROM users WHERE ?', deleteWhere, (err, result) => {
    if (err) throw err;
    console.log('Deleted rows count:', result.affectedRows);
});
// 关闭连接
connection.end((err) => {
    if (err) {
        return console.error('Error ending the connection:', err.stack);
    }
    console.log('Connection closed.');
});

通过以上步骤,你已经成功地在 Node.js 项目中连接并使用了 MySQL 数据库,希望这篇文章对你有所帮助!

标签: node连接mysql 
排行榜
关于我们
「好主机」服务器测评网专注于为用户提供专业、真实的服务器评测与高性价比推荐。我们通过硬核性能测试、稳定性追踪及用户真实评价,帮助企业和个人用户快速找到最适合的服务器解决方案。无论是云服务器、物理服务器还是企业级服务器,好主机都是您值得信赖的选购指南!
快捷菜单1
服务器测评
VPS测评
VPS测评
服务器资讯
服务器资讯
扫码关注
鲁ICP备2022041413号-1