npm 包 sqlformatter 使用教程

阅读时长 5 分钟读完

在前端开发中,我们经常需要对 SQL 语句进行格式化或美化,以便能更好的阅读和理解。在这种情况下,npm 包 sqlformatter 就非常方便了。它可以格式化包括 SELECT、UPDATE、INSERT 和 DELETE 在内的 SQL 语句,还可以设置自定义的选项来满足个人需求,让我们来一探究竟能做什么吧。

安装

安装 sqlformatter 只需要使用 npm 并运行以下命令:

使用

在你的项目中,你需要引入 sql-formatter。假设你已经有了一个查询字符串:

现在,你可以使用如下代码将 query 输出为格式化字符串:

输出:

-- -------------------- ---- -------
------
  ----------
  ---------
  ---------------
----
  -----
-----
  --------------- - ----
----- --
  ---------
  --------- ---
展开代码

我们可以看到 sql-formatter 自动将 SQL 语句中的关键字和表名等逗号分隔的单词独立成一行,缩进后为查询语句提供了更好的可读性。

可定制化选项

但是,sql-formatter 不仅仅能够格式化 SQL 语句,它还支持一系列选项,可以让你以最适合你需求的方式显示格式化的 query。

指定缩进量

与一些开发习惯有关的,缩进可以看作是格式化 SQL 语句时最重要的组件之一。你可通过设置缩进量来改变 SQL 语句中列的对齐方式,例如:

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

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

------------
  ------------------------ -
    ------- -  --
  --
--
展开代码

输出:

-- -------------------- ---- -------
------
  ----------
  ---------
  ---------------
----
  -----
-----
  --------------- - ----
----- --
  ---------
  --------- ---
展开代码

我们把 indent 属性设置为了两个空格,因此我们在项之间添加了两个空格。您还可以将其设置为一个制表符 \t ,以符合您的惯例。

仅缩进嵌套查询

该选项仅缩进嵌套查询语句,比如 SELECTFROM 子句。你可以轻松设置同时更改 SQL 语句的外观,如下:

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

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

------------
  ------------------------ -
    ------- -  --
    ----------- -----
  --
--
展开代码

输出:

-- -------------------- ---- -------
------
  ---- -- ---
  ---- -- ---------
  ------ -- ----------
----
  --------------- -
  ---- ---- --------------- - -- ---------- - ----
----- --
  ----------- -----
展开代码

每句话加分号

在SQL查询结束时自动添加分号。

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

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

------------
  ------------------------ -
    ------- -  --
    ---------- -----
  --
--
展开代码

输出:

-- -------------------- ---- -------
------
  ----------
  ---------
  ---------------
----
  -----
-----
  --------------- - ----
----- --
  ---------
  --------- ----
展开代码

更多选项

还有一些其他选项包括:

  • uppercase:将关键字转换为大写;
  • linesBetweenQueries: 设置SQL查询之间的换行符数;
  • params: 用于格式化包含 ? 的查询/转换命令的占位符;

更多细节详见sq-formatter官方文档

总结

使用 npm 包 sql-formatter 可以快捷方便地将 SQL 查询语句格式化为易于阅读的字符串。除此之外,sql-formatter 还可选自定义属性来满足你的需求。

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

纠错
反馈

纠错反馈