web-dev-qa-db-ja.com

antlr4sql文法

ANTLR4にはSQL文法がありますか?もしそうなら、どこでそれを見つけることができますか?

ANTLR wikiからのリンクがありますが、リンクが壊れています: 文法リスト

18
Chris Snow

いいえ、この記事の執筆時点では、v4SQLの文法はありません。

すべてのv4文法は、次のGithubリポジトリに配置されます(ANTLRメーリングリストから覚えている限り): https://github.com/antlr/grammars-v4

ここにv3文法があります: http://antlr3.org/grammar/list.html

編集-2018年4月

ここにユーザーが投稿したMySQL文法があります: https://github.com/antlr/grammars-v4/tree/master/mysql

24
Bart Kiers

現在、v4用のSQL文法もたくさんあります。

  1. MySQL
  2. PL/SQL
  3. T-SQL (Microsoft SQL Server)by KvanTTT
7
Mike Koltsov

2017年2月6日の時点で、t-sql用のANTLR4ファイルがありますが、コミュニティで管理されており、完全ではありません。SQLServerで有効なSQLステートメントが多数見つかりましたが、この文法では解析できません。

3
Zhan Cao

他のユーザーが述べたように、オンラインで利用できるSQL文法がありますが、それらは完全ではありません。不完全な文法を使用し、必要に応じてその上に存在しない文法を追加するのが最善の方法であることをお勧めします。たとえば、join句の翻訳が必要で、それが存在しない場合は、その上に追加するだけです。作成する文法が既存の文法を壊さないことを確認してください

これは、SASスクリプトをPythonに変換するツールを作成する必要があったインターンシップで行ったことです。SAS独自仕様であるため、文法は利用できませんでした。そのため、すべてをゼロから構築しました。

0