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 数据库,并在你的应用程序中进行数据库操作。

相关推荐
田猿笔记34 分钟前
在 Node.js 中正确处理 `async/await` 及数组迭代
node.js
小马哥编程44 分钟前
Function.prototype和Object.prototype 的区别
javascript
小白学前端66644 分钟前
React Router 深入指南:从入门到进阶
前端·react.js·react
web130933203981 小时前
前端下载后端文件流,文件可以下载,但是打不开,显示“文件已损坏”的问题分析与解决方案
前端
王小王和他的小伙伴1 小时前
解决 vue3 中 echarts图表在el-dialog中显示问题
javascript·vue.js·echarts
学前端的小朱1 小时前
处理字体图标、js、html及其他资源
开发语言·javascript·webpack·html·打包工具
outstanding木槿1 小时前
react+antd的Table组件编辑单元格
前端·javascript·react.js·前端框架
好名字08212 小时前
前端取Content-Disposition中的filename字段与解码(vue)
前端·javascript·vue.js·前端框架
摇光932 小时前
js高阶-async与事件循环
开发语言·javascript·事件循环·宏任务·微任务
隐形喷火龙2 小时前
element ui--下拉根据拼音首字母过滤
前端·vue.js·ui