Node.js 连接 MySQL 数据库

在现代 Web 开发中,与数据库的交互是不可避免的一部分。Node.js 提供了许多库和模块,使得连接和操作 MySQL 数据库变得相对简单。本文将介绍如何使用 Node.js 连接 MySQL 数据库,并进行一些基本的操作。

步骤1:安装依赖

首先,确保你已经安装了 Node.js。然后,在你的项目目录下,使用以下命令安装 mysql 模块:

bash 复制代码
npm install mysql

步骤2:连接到 MySQL 数据库

在你的 Node.js 项目中,我们创建一个新的 JavaScript 文件,例如为 app.js,这将是我们的主要应用程序入口。在这个文件中,我们将编写以下代码来建立与 MySQL 数据库的连接、执行查询和插入操作。这个文件将负责与数据库进行通信,确保数据的可靠性和安全性。让我们一步步来了解如何在这个文件中编写代码,实现与 MySQL 数据库的无缝交互:

javascript 复制代码
// 引入mysql模块
const mysql = require('mysql');

// 创建数据库连接
const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'your_password',
    database: 'your_database'
});

// 连接到数据库
connection.connect((err) => {
    if (err) {
        console.error('无法连接到数据库:', err);
    } else {
        console.log('成功连接到数据库');
        // 在这里可以进行数据库操作
        // 例如查询数据、插入数据等
    }
});

// 结束连接(在完成数据库操作后)
connection.end((err) => {
    if (err) {
        console.error('无法关闭数据库连接:', err);
    } else {
        console.log('成功关闭数据库连接');
    }
});

请替换代码中的 your_passwordyour_database 分别为你的 MySQL 数据库密码和数据库名称。这段代码创建了一个到 MySQL 数据库的连接,并在成功连接后输出一条消息。

步骤3:执行数据库查询

接下来,我们可以执行一些基本的数据库查询。以下是一个示例,演示如何从数据库中选择数据:

javascript 复制代码
// 在连接成功后执行查询
connection.query('SELECT * FROM your_table', (err, results) => {
    if (err) {
        console.error('查询失败:', err);
    } else {
        console.log('查询结果:', results);
    }

    // 结束数据库连接
    connection.end();
});

请将 your_table 替换为你要查询的实际表名。在这个查询的回调函数中,你可以处理查询结果或处理错误信息。

步骤4:执行数据库插入

除了查询,我们还可以执行插入操作。以下是一个插入数据的示例:

javascript 复制代码
// 在连接成功后执行插入
const newRecord = { name: 'John Doe', age: 25 };

connection.query('INSERT INTO your_table SET ?', newRecord, (err, results) => {
    if (err) {
        console.error('插入数据失败:', err);
    } else {
        console.log('成功插入数据,插入的记录ID为:', results.insertId);
    }

    // 结束数据库连接
    connection.end();
});

这个示例将一个新记录插入到数据库中,并输出插入的记录ID。

结语

使用 Node.js 连接 MySQL 数据库并进行查询和插入操作是相对简单的。在实际项目中,你可能还会用到 Promise、async/await 等更高级的技术来处理数据库操作,但是在实际项目中,应该采取适当的安全措施,例如防止 SQL 注入攻击等。希望这篇文章能够帮助你开始使用 Node.js 连接 MySQL 数据库,并在你的应用程序中进行数据库操作。

相关推荐
紫禁玄科11 小时前
Shai-Hulud:npm生态的自我复制蠕虫风暴
前端·npm·node.js
东风破_11 小时前
后端API没写好,前端难道干等着吗?
前端
用户9385156350711 小时前
从前后端分离到前端接口工程:React + MockJS + Vite 解析
前端·后端·全栈
用户9385156350711 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformers.js 全链路实战(三)
前端·react.js·typescript
excel12 小时前
当前端行情变差,我们为什么还要坚持?
前端
鸿是江边鸟,曾是心上人12 小时前
快速搭建HTTPS本地开发环境
前端
To_OC13 小时前
写了 5 个表单 Demo 后,我终于彻底搞懂了 React 受控与非受控组件
前端·react.js·前端框架
Sterting13 小时前
第9课 Vue Router 路由
前端·vue.js
用户0595401744613 小时前
LangChain Memory 测试踩坑实录:用 pytest 自动化回归对话记忆,我折腾了整整一个周末
前端·css
kyriewen13 小时前
Claude Code后天起默认Auto模式了——我第一时间改了这6个设置
前端·ai编程·claude