2012-04-18 89 views
0

我打算創建一個SQL查詢分析器。 只需使用正確的標記並檢查訂單即可完成。解析器SQL Java中

但我計劃從東西我在編譯器設計課程(但年前)瞭解到

我可以定義文法我想包括查詢做到這一點,但我需要在最初的一些幫助指導,實施什麼樣的解析器?自上而下/自下而上等等,這是更容易開始。

標記,作爲家庭作業,因爲我正在尋找一些指導。

http://blog.tcx.be/2007/05/writing-parser-overview.html - 我看着這個鏈接,幫助我對如何進行。任何其他幫助表示讚賞。

回答

1

自頂向下的,遞歸下降解析器是最容易理解,因此最容易實​​現的,如果你是手工編碼它。

你有沒有考慮使用一個解析器生成有關係嗎?我在最近的一個項目中成功使用antlr,肯定會將其推薦給其他人。它有一些很好的教程和一個用於原型語法的好的GUI工具。

+0

你不需要手動編碼的解析器。 SQL語法往往很大,你想使用一個強大的解析器生成器。 ANTLR沒問題,可能會附帶一個已經可用的SQL語法。 – 2012-04-18 06:30:25

+0

我打算只實現一小組功能,並且可能會在其上擴展。簡單地學習這一點,不要在任何產品中部署。環境。 所以,自上而下是我的問題最好的開始吧? – sravanreddy001 2012-04-18 15:21:22

1

有點晚了這個問題,但最近我一直在玩的SQL Query Parser類,這是Eclipse的數據工具項目的一部分。對我來說安裝它並使其工作起來有點困難(我不是Java開發人員),但我設法並且很容易解析非常複雜的查詢。