Node.js开发必备:全面掌握MySQL数据库使用教程
nodejs使用mysql教程

首页 2025-07-12 14:50:26



Node.js 使用 MySQL教程:构建高效数据库交互应用 在当今的软件开发领域,Node.js 以其高效、异步、非阻塞的 I/O 操作模型,成为了构建高性能网络应用的首选技术之一

    而 MySQL,作为一个成熟、稳定且广泛使用的开源关系型数据库管理系统,无疑是存储和管理数据的不二之选

    将这两者结合,可以开发出既快速又可靠的 Web 应用

    本文将详细讲解如何在 Node.js 中使用 MySQL,从安装配置到实际操作,带你一步步走进高效数据库交互的世界

     一、环境准备 1. 安装 Node.js 首先,确保你的系统上已经安装了 Node.js

    你可以通过访问【Node.js官网】(https://nodejs.org/) 下载并安装最新版本的 Node.js

    安装完成后,打开终端或命令提示符,输入以下命令检查 Node.js 和 npm(Node 包管理器)是否安装成功: bash node -v npm -v 2. 安装 MySQL 接下来,安装 MySQL

    你可以通过 MySQL 的官方网站下载适用于你操作系统的安装包,或者使用包管理器(如 Homebrew for macOS, apt-get for Ubuntu)进行安装

    安装完成后,启动 MySQL 服务,并设置 root 密码(如果安装过程中未设置)

     3. 创建数据库和表 为了演示,我们需要一个 MySQL 数据库和一张表

    打开 MySQL命令行客户端或使用你喜欢的 MySQL 管理工具(如 phpMyAdmin, MySQL Workbench),执行以下 SQL语句创建一个名为`testdb` 的数据库和一张名为`users` 的表: sql CREATE DATABASE testdb; USE testdb; CREATE TABLE users( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, email VARCHAR(100) NOT NULL UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); 二、在 Node.js 中连接 MySQL 1. 安装 MySQL 客户端库 在 Node.js 项目中,我们使用`mysql` 或`mysql2` 这样的第三方库来与 MySQL 数据库进行交互

    这里我们以`mysql2` 为例,因为它提供了更好的性能和 Promise 支持

    在你的项目根目录下,使用 npm 安装`mysql2`: bash npm install mysql2 2. 建立数据库连接 创建一个名为`db.js` 的文件,用于封装数据库连接逻辑: javascript const mysql = require(mysql2/promise); async function createConnection(){ const connection = await mysql.createConnection({ host: localhost, user: root, password: your_password, //替换为你的 MySQL root 密码 database: testdb }); return connection; } module.exports = createConnection; 3. 执行查询 接下来,我们创建一个示例脚本来演示如何执行 SQL 查询

    创建一个名为`app.js` 的文件,并添加以下代码: javascript const createConnection = require(./db); (async() =>{ try{ const connection = await createConnection(); //插入数据 const【rows, fields】 = await connection.execute( INSERT INTO users(name, email) VALUES(?, ?), 【John Doe, john.doe@example.com】 ); console.log(Inserted ID:, rows.insertId); // 查询数据 const【results, fields】 = await connection.execute(SELECTFROM users); console.log(Users:, results); // 关闭连接 await connection.end(); } catch(error){ console.error(Database error:, error); } })(); 在这个示例中,我们首先创建了一个数据库连接,然后执行了一个插入操作,接着查询了`users` 表中的所有记录,并最后关闭了数据库连接

    注意,我们使用占位符`?` 来防止 SQL注入攻击,并通过传递参数数组来安全地传递值

     三、使用 ORM框架(可选) 虽然直接使用 MySQL客户端库可以完成所有数据库操作,但在实际应用中,使用对象关系映射(ORM)框架可以大大简化代码并提高可维护性

    Sequelize 是一个流行的 Node.js ORM框架,支持 MySQL、PostgreSQL、SQLite 和 MSSQL

     1. 安装 Sequelize 和 MySQL2 bash npm install sequelize mysql2 2. 初始化 Sequelize 在项目根目录下运行 Sequelize 的 CLI 命令来初始化项目(需要先全局安装 sequelize-cli): bash npm install -g sequelize-cli sequelize-cli init 这将创建一个`config`、`models`、`migrations` 和`seeders` 目录

     3. 配置数据库连接 编辑`config/config.json` 文件,添加你的数据库配置: json { development:{ username: root, password: your_password, database: testdb, host: 127.0.0.1, dialect: mysql } } 4. 定义模型 在`models`目录下创建一个名为`user.js` 的文件,定义 User 模型: javascript module.exports =(sequelize, DataTypes) =>{ const User = sequelize.define(User,{ name: DataTypes.STRING, email: DataTypes.STRING, },{}); return User; };

nat123映射怎么用?超详细步骤,外网访问内网轻松搞定
nat123域名怎么用?两种方式轻松搞定
nat123怎么用?简单几步实现内网穿透
内网穿透工具对比:nat123、花生壳与轻量新选择
远程访问内网很简单:用对工具,一“箭”穿透
ngrok下载完全指南:从入门到获取客户端
内网远程桌面软件:穿透局域网边界的数字窗口
从外网远程访问内网服务器的完整方案
Windows Server 2008端口转发完全教程:netsh命令添加/查看/删除/重置
为什么三层交换机转发比Linux服务器快?转发表硬件加速的秘密