Node.js 中的 MySQL 连接及使用方法

阅读时长 7 分钟读完

什么是 MySQL?

MySQL 是一种开源的关系型数据库管理系统,在 web 开发中被广泛应用。它的特点是速度快、数据安全性好、易于使用,并且提供了高度可定制的功能。

Node.js 中的 MySQL 连接方法

Node.js 中想要使用 MySQL,需要安装 MySQL 的 node.js 驱动程序。MySQL 驱动程序有很多,比如官方的 mysql 模块、第三方的 mysql2 模块等。这里以 mysql2 模块为例。

首先,打开终端,切换到项目根目录,执行以下命令安装 mysql2 模块:

安装完成后,在项目中引入 mysql2 模块:

接下来,我们需要建立 MySQL 数据库的连接。

-- -------------------- ---- -------
-- ----
----- ---------- - ------------------------
  ----     - ------------
  ----     - -------
  -------- - ---------
  -------- - -------
---

-- -----
-------------------------------- -
  -- ----- -
    -------------------- ----------- - - -----------
    -------
  -
  ---------------------- -- -- - - ---------------------
---

在这段代码中,我们使用 mysql.createConnection() 方法创建一个连接,参数包括:

  • host:数据库所在的主机名
  • user:连接 MySQL 服务的用户名
  • password:连接 MySQL 服务的密码
  • database:要连接的数据库名

接着,我们通过调用 connection.connect() 方法来连接数据库。在成功建立连接后,会输出连接的线程 ID。

Node.js 中 MySQL 的基本操作

连接成功后,我们就可以对 MySQL 数据库进行基本操作了,比如查询、插入、更新和删除等。下面我们分别介绍这些操作的详细方法。

查询操作

在 MySQL 中,查询操作使用 SELECT 语句。在 Node.js 中,查询操作使用 connection.query(sql, callback) 方法实现。

在这段代码中,我们通过 connection.query() 方法将 SELECT * FROM my_table 作为参数传入,查找 my_table 表中的所有数据。查询结果将作为第二个参数传递给 callback 函数。

插入操作

在 MySQL 中,插入操作使用 INSERT INTO 语句。在 Node.js 中,插入操作使用 connection.query(sql, values, callback) 方法实现。

在这段代码中,我们创建了一个名为 posts 的文章表,并向该表中插入一行数据。我们使用 INSERT INTO posts SET ? 作为参数传入 connection.query() 方法。? 将在以下 post 对象中被替换。

更新操作

在 MySQL 中,更新操作使用 UPDATE 语句。在 Node.js 中,更新操作使用 connection.query(sql, values, callback) 方法实现。

在这段代码中,我们使用 UPDATE posts SET ? WHERE id = ? 作为参数传入 connection.query() 方法。将 ? 分别替换为 post 对象和文章 ID。

删除操作

在 MySQL 中,删除操作使用 DELETE FROM 语句。在 Node.js 中,删除操作使用 connection.query(sql, callback) 方法实现。

在这段代码中,我们使用 DELETE FROM posts WHERE id = ? 作为参数传入 connection.query() 方法。将 ? 替换为文章 ID。

总结

本文主要介绍了 Node.js 中连接 MySQL 的方法及基本操作。MySQL 是 web 开发中重要的数据库之一,熟练掌握 MySQL 的使用方法可以提高 web 开发的效率,为开发高效的 web 应用奠定基础。

完整示例代码:

-- -------------------- ---- -------
----- ----- - -----------------

-- ----
----- ---------- - ------------------------
  ----     - ------------
  ----     - -------
  -------- - ---------
  -------- - -------
---

-- -----
-------------------------------- -
  -- ----- -
    -------------------- ----------- - - -----------
    -------
  -
  ---------------------- -- -- - - ---------------------

  -- ----
  ------------------------ - ---- ---------- ------------- -------- ------- -
    -- ----- ----- ----
    
    -- ----
    ---------------------
  ---

  -- ----
  ----- ---- - - ------ --- --------- -------- ------ ------- --
  ------------------------ ---- ----- --- --- ----- ------------- -------- -
    -- ----- ----- ----
    
    -- ----
    ---------------------
  ---

  -- ----
  ----- ------- - - ------ --- --------- -------- ------ ------ ---------- --
  ------------------------ ----- --- - ----- -- - --- --------- --- ------------- -------- -
    -- ----- ----- ----
    
    -- ----
    ---------------------
  ---

  -- ----
  ------------------------ ---- ----- ----- -- - --- ---- ------------- -------- -
    -- ----- ----- ----
    
    -- ----
    ---------------------
  ---
---

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6522757095b1f8cacd9f025a

纠错
反馈