Skip to content

Commit 8d6ef3b

Browse files
authored
Update Readme.md
1 parent b42876d commit 8d6ef3b

1 file changed

Lines changed: 15 additions & 12 deletions

File tree

README.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# miniSqlParser
2-
a simple SQL Parser, that can convert sql statements to an abstract syntax tree.
2+
A simple SQL Parser, that can convert sql statements to an abstract syntax tree.
33

44
## Description
5-
C#で作成したシンプルなSQL構文解析器です。SQL文を解析して構文木を生成します。SELECT・INSERT・UPDATE・DELETEなどの基本的なSQL文に対応しています。生成した構文木をから整形したSQL文を出力したり、SQL文の変更などなどを行うことができます。
5+
C#で作成したシンプルなSQL構文解析器です。SQL文を解析して構文木を生成します。SELECT・INSERT・UPDATE・DELETE・REPLACE・MERGEなどの基本的なSQL文に対応しています。生成した構文木から整形したSQL文を出力したり、SQL文の変更などなどを行うことができます。
66

77
miniSqlParserは.NETのアセンブリファイル(DLLファイル)です。C#などの.NET言語から参照して使用します。
88

@@ -13,19 +13,22 @@ SQL文の文法はDBMSによりかなり異なるため、主要DBMSの文法か
1313
![Alt text](SQLFormatter_Demo.jpg)
1414

1515
## Usage
16-
// SQL文の文字列から構文木(Abstract Syntax Tree)を出力します
17-
var ast = MiniSqlParserAST.CreateStmts("SELECT col FROM TBL");
1816

19-
// 構文木から整形SQL文を出力するVisitorを生成します
20-
// このように構文木を走査するVisitorを用意できれば様々な処理を構文木に対して行えます
21-
// (BeautifulStringifierクラスはminiSqlParserにサンプルとして含めています)
22-
var stringifier = new BeautifulStringifier(4098);
17+
```C#
18+
// SQL文の文字列から構文木(Abstract Syntax Tree)を出力します
19+
var ast = MiniSqlParserAST.CreateStmts("SELECT col FROM TBL");
2320

24-
// Visitorに構文木を走査させます
25-
ast.Accept(stringifier);
21+
// 構文木から整形SQL文を出力するVisitorを生成します
22+
// このように構文木を走査するVisitorを用意できれば様々な処理を構文木に対して行えます
23+
// (BeautifulStringifierクラスはminiSqlParserにサンプルとして含めています)
24+
var stringifier = new BeautifulStringifier(4098);
2625

27-
// 操作し終えたVisitorから結果(整形後のSQL文)を取得します
28-
string formattedSql = stringifier.ToString();
26+
// Visitorに構文木を走査させます
27+
ast.Accept(stringifier);
28+
29+
// 操作し終えたVisitorから結果(整形後のSQL文)を取得します
30+
string formattedSql = stringifier.ToString();
31+
```
2932

3033
## Requirement
3134
* Antlr4.Runtime.Standard 4.7.1

0 commit comments

Comments
 (0)