dt-sql-parser icon indicating copy to clipboard operation
dt-sql-parser copied to clipboard

SQL Parsers for BigData, built with antlr4.

Results 71 dt-sql-parser issues
Sort by recently updated
recently updated
newest added

``` const mysql = new MySQL(); mysql.locale = "zh_CN"; // 设置语言包 mysql.validate(sql); // 输出的msg 就是 zh_CN ``` TODO: 1. 语言包的动态引入 2. 其他sql的单元测试补充 3. 其他方式设置语言类型

### Version 4.0.0 ### Which SQL? MySQL ### SQL content ```sql SELECT * FROM tb where ; ``` ### JavaScript/TypeScript code ```typescript import { FlinkSQL } from "dt-sql-parser"; const flink...

bug

### Topic Enhance existing features ### Description 下面语句 按理说应该有两个错误,但是只抛出了一个 ``` SELEC * from table1; SELEC * from table2; ``` ![image](https://github.com/DTStack/dt-sql-parser/assets/7693866/a99f59fb-2fa2-4892-b789-11827f60bf9a)

### Topic Enhance existing features ### Description 目前的报错信息不够明显,需要优化

improvement

### Topic Support new SQL ### Description Any plan to support clickHouse? - [clickhouse antlr](https://github.com/ClickHouse/ClickHouse/blob/master/utils/antlr/README.md)

### Version latest ### Which SQL? Postgre ### SQL content ```sql select * from public.| ``` ### JavaScript/TypeScript code ```typescript It can be reproduced online: https://dtstack.github.io/monaco-sql-languages/ ``` ### What happened?...

## 主要变更 https://github.com/DTStack/dt-sql-parser/issues/289 升级 trino 语法至 trino 450 版本,并完成对应的单元测试 ## 语法变更详情 1. 新增 createCatalog 2. 新增 dropCatalog 3. 修改 createTable 4. 新增 commentView 5. 新增 setColumnType 6. 新增 dropNotNullConstraint 7....

new features

### Feature 1. 收集字段时,收集字段的类型和字段注释 2. 收集新建实体名时,收集实体的注释信息,如果有的话 ### Fix 1. 修复 #305 ### Description 1. 关于用带`_`取属性名,antlr4ng目前解析出来属性名都是带`_`,是公有的。甚至以`type`命名前后都有下划线,应该是以防重名,无关私有公有 2. 关于`findAttributeChildren`方法里的`child`类型,因为antlr4ng 的`ParserRuleContext`里,`children`并未重申类型,导致children类型为`ParseTree[]`,需要和三方提PR修改 3. 关于table alias,需要作为实体去收集,当前PR不放相关内容

### 修改内容 1. 使用通用SQL作为基准测试测试用例 2. 基准测试会对数据进行异常值筛选 3. 基准测试配置项提取到benchmark.config.ts中 ### 测试数据 1. 尽量使用通用性强的SQL,不同语言测试的SQL应在复杂度,嵌套层级上基本一致 2. SQL保持规模在1000行左右 3. 覆盖不同类型语句, create.sql、select.sql、insert.sql、update.sql、split.sql、suggestion.sql 不同方法对应的测试用例 1. getAllTokens: create.sql、select.sql、insert.sql、update.sql 2. validate: create.sql、select.sql、insert.sql、update.sql 3. splitSQLByStatement: split.sql 4. getAllEntities: suggestion.sql...

### Topic Support new features on parser ### Description #311 #312 #370

Low Priority