npm 包 sqlm 使用教程

阅读时长 4 分钟读完

介绍

sqlm 是一个针对前端的 SQL 查询库,它使用 Promise 风格调用 API,可以进行命令式 SQL 查询构建,同时支持参数化查询和无需要预编译的查询。sqlm 基于 MySQL 数据库,并且支持主从多节点集群环境。

安装

使用 npm 命令进行全局安装:

使用说明

在使用 sqlm 之前,需要通过以下方法创建连接对象:

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

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

在创建连接对象之后,就可以使用 sqlm 的 API 进行数据库查询操作。以下是两个简单的示例:

参数化查询示例代码

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

无预编译查询示例代码

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

深入学习

sqlm 的函数式 API 非常灵活,它支持以下的查询方法:

pool.getConnection(callback)

获取指定数据库的连接,在回调函数中返回连接对象。可以使用的回调参数包括 err 和 connection。

connection.query(sqlString, [inputs], callback)

执行查询操作,如果有查询结果则返回 rows (行集) 。可以使用的回调参数包括 err 和 rows。

connection.beginTransaction(callback)

启动事务,并在回调方法中返回一个可用的连接对象。

connection.commit(callback)

提交活动事务,并在回调函数中返回已提交的结果。

connection.rollback(callback)

在回调函数中回滚未提交的事务。

connection.release()

释放一个未使用的连接,并将连接返回到连接池。

connection.destroy()

完全销毁连接,意味着无法再使用。

以上列举的方法都是 Promise 风格的 API,因此可以通过 then() 和 catch() 方法进行链式调用。在学习使用 sqlm 的时候,还需学习和理解 MySQL 存储和查询语法。

使用建议

为了得到更好的性能,我们建议以下几点:

  • 提交事务后立即释放连接。(如果没有事务,请立即释放连接。)
  • 在应用程序启动时建立连接。
  • 启用与所需数量相同的连接限制。(不要使用过多的连接。)
  • 在发生错误时捕获并释放连接。

结论

sqlm 是一个非常好用的前端 SQL 查询库,它可以帮助开发人员更轻松地进行数据库操作,提高了开发效率。在开发应用程序时使用 sqlm,不仅可以更好的理解和使用 SQL 语言,还能够帮助开发人员更好地优化应用程序性能。

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

纠错
反馈