# @builder\.io/sqlgenerate 中文文档

规范地址：https://npmcn.com/package/%40builder.io/sqlgenerate/

版本：1\.2\.9
npm 元数据更新时间：2026-09-09T09:17:26.141Z
中文译文更新时间：2026-11-08T19:41:53.988Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40builder.io/sqlgenerate
原文对照：https://npmcn.com/package/%40builder.io/sqlgenerate/?lang=original
项目主页：https://github.com/jdrew1303/sqlgenerate
源码仓库：https://github.com/jdrew1303/sqlgenerate

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：57.4 kB，10 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=0\.10\.0
- 运行依赖：2 个
- 首次发布：2020-06-24T03:30:22.307Z
- 最新版本发布：2021-06-01T22:04:57.159Z
- 近 30 天下载量：3014（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：9（近 12 个月 0 个）

## 中文简介

从JSON AST中生成SQL.

## 安装

```sh
npm install @builder.io/sqlgenerate
```

也可以使用：`pnpm add @builder.io/sqlgenerate`、`yarn add @builder.io/sqlgenerate`、`bun add @builder.io/sqlgenerate`

## README

[![](https://npmcn.com/package/%40builder.io/sqlgenerate/docs/sql_generate_logo.png)](https://npmcn.com/package/%40builder.io/sqlgenerate/#)

**[概览](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-overview)** | **[特征](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-features)** | **[安装](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-installation)** | **[贷项](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-credits)** | **[问题](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-issues)**

  

 [![ ](https://sqlast.herokuapp.com/badge.svg)](https://sqlast.herokuapp.com/)[![ ](https://img.shields.io/travis/jdrew1303/sqlgenerate.svg?style=flat-square) ](https://travis-ci.org/jdrew1303/sqlgenerate)[![ ](http://img.shields.io/badge/license-MIT-blue.svg?style=flat-square) ](https://npmcn.com/package/%40builder.io/sqlgenerate/LICENSE)![ ](https://img.shields.io/badge/platform-Browser%20%7C%20Node.js-808080.svg?style=flat-square) [![ ](https://img.shields.io/badge/documentation-below-green.svg?style=flat-square)](https://travis-ci.org/jdrew1303/sqltraverse)

## 概览

SQLGenerate 取下一个 [密码学校 sqlite-parser](https://github.com/codeschool/sqlite-parser/) AST并从中生成 SQL. 它允许您读取代码( 使用 Codeschool parser) , 操纵 AST( 使用 [SQLTravers 函数](https://github.com/jdrew1303/sqltraverse))然后生成SQL(使用此库::smile:).

[⬆️](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-top)

## 特征

[⬆️](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-top)

## 安装

`npm install sqlgenerator` 说完了!

[⬆️](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-top)

### 使用此项目

吹出的例子是一个简单的例子,将 SQL 解析到一个"Ast",再再重新解析到 SQL. 一个更好的用法是用某种方式修改您的 SQL 。 要做到这一点,你可以使用 [平转](https://github.com/jdrew1303/sqltraverse) (是的,这是一个无耻的插头).

```javascript
import parser       from 'sqlite-parser';
import { generate } from 'sqlgenerate';
import { format }   from "sql-formatter";

const example = `
  SELECT m.title, r.id AS [Theatre Number]
  FROM Movies AS m
  INNER JOIN (
    SELECT r2.movie_id
    FROM Rooms AS r2
    WHERE (r2.seats >= 50)
  ) AS r
  ON ((m.id = r.movie_id) AND (m.title != 'Batman'));`

const ast = parser(sql);
const regeneratedSQL = generate(ast);

console.log(format(regeneratedSQL));
```

[⬆️](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-top)

## 贷项

[![jdrew1303](https://avatars0.githubusercontent.com/u/2535432?v=3&s=40)](https://twitter.com/intent/follow?screen_name=j_drew1303 "Follow @j_drew1303 on Twitter")

版权(c)2016年

## 问题

-   测试,测试和更多的测试.
-   正在构建的文档(需要为SQL而不是JavaScript工作实例).
-   目前一些节点类型AST处于通量状态. 我们还可能需要为这些节点(另一个工程)安装一个构建器.
-   你得过去 `ast.statement` 不只是生下来的 `ast` 从解析器中返回(这是基础节点没有类型的问题).
-   添加对评论的支持 .
-   添加源图支持 .

[⬆️](https://npmcn.com/package/%40builder.io/sqlgenerate/#readme-top)

## 常见问题

### @builder\.io/sqlgenerate 是什么？

从JSON AST中生成SQL\.

### 如何安装 @builder\.io/sqlgenerate？

在项目目录运行 npm install @builder\.io/sqlgenerate，或使用 pnpm add / yarn add / bun add。

### @builder\.io/sqlgenerate 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/builder\.io\_\_sqlgenerate 是否存在。

### @builder\.io/sqlgenerate 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @builder\.io/sqlgenerate 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=0\.10\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @builder\.io/sqlgenerate 可以商用吗？

@builder\.io/sqlgenerate 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @builder\.io/sqlgenerate 的下载量有多少？

根据 npm 官方下载统计，@builder\.io/sqlgenerate 在 2026/10/09 – 2026/11/07 这 30 天内被下载 3,014 次，日均约 100 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @builder\.io/sqlgenerate 还在维护吗？

最新版本 1\.2\.9 发布于 2021/06/02（5 年前）；至今共发布 9 个版本，其中过去 12 个月发布了 0 个；首次发布于 2020/06/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

