久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

  • <i id='0gfpA'><tr id='0gfpA'><dt id='0gfpA'><q id='0gfpA'><span id='0gfpA'><b id='0gfpA'><form id='0gfpA'><ins id='0gfpA'></ins><ul id='0gfpA'></ul><sub id='0gfpA'></sub></form><legend id='0gfpA'></legend><bdo id='0gfpA'><pre id='0gfpA'><center id='0gfpA'></center></pre></bdo></b><th id='0gfpA'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='0gfpA'><tfoot id='0gfpA'></tfoot><dl id='0gfpA'><fieldset id='0gfpA'></fieldset></dl></div>

        <bdo id='0gfpA'></bdo><ul id='0gfpA'></ul>

      <legend id='0gfpA'><style id='0gfpA'><dir id='0gfpA'><q id='0gfpA'></q></dir></style></legend>

      <small id='0gfpA'></small><noframes id='0gfpA'>

      1. <tfoot id='0gfpA'></tfoot>

        如何將 MySQL yacc 語法轉換為 antlr LL(1)?

        How to convert MySQL yacc grammar to antlr LL(1)?(如何將 MySQL yacc 語法轉換為 antlr LL(1)?)
        <i id='uYy71'><tr id='uYy71'><dt id='uYy71'><q id='uYy71'><span id='uYy71'><b id='uYy71'><form id='uYy71'><ins id='uYy71'></ins><ul id='uYy71'></ul><sub id='uYy71'></sub></form><legend id='uYy71'></legend><bdo id='uYy71'><pre id='uYy71'><center id='uYy71'></center></pre></bdo></b><th id='uYy71'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='uYy71'><tfoot id='uYy71'></tfoot><dl id='uYy71'><fieldset id='uYy71'></fieldset></dl></div>
        <tfoot id='uYy71'></tfoot>
          <bdo id='uYy71'></bdo><ul id='uYy71'></ul>

                  <tbody id='uYy71'></tbody>
                <legend id='uYy71'><style id='uYy71'><dir id='uYy71'><q id='uYy71'></q></dir></style></legend>

                <small id='uYy71'></small><noframes id='uYy71'>

                1. 本文介紹了如何將 MySQL yacc 語法轉換為 antlr LL(1)?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  我正在用 ANTLR 構建一個 MySQL 語法驗證器.我從 MySQL 源代碼中的 sql_yacc.yy 開始,但我在轉換以下語法時遇到了一些困難.我嘗試了很多次,但它不起作用.有人可以幫我嗎?

                  I am constructing a MySQL grammar validator with ANTLR. I started with the sql_yacc.yy from the MySQL source code, but I have some difficulties converting the following grammar. I tried many times, but it doesn't work. Can anyone help me?

                  expr
                    : expr or expr 
                    | expr XOR expr
                    | expr and expr
                    | NOT_SYM expr 
                    | bool_pri IS TRUE_SYM 
                    | bool_pri IS not TRUE_SYM 
                    | bool_pri IS FALSE_SYM
                    | bool_pri IS not FALSE_SYM 
                    | bool_pri IS UNKNOWN_SYM
                    | bool_pri IS not UNKNOWN_SYM 
                    | bool_pri
                    ;
                  
                  bool_pri
                    : bool_pri IS NULL_SYM 
                    | bool_pri IS not NULL_SYM 
                    | bool_pri EQUAL_SYM predicate 
                    | bool_pri comp_op predicate
                    | bool_pri comp_op all_or_any '(' subselect ')' 
                    | predicate
                    ;
                  
                  predicate
                    : bit_expr IN_SYM '(' subselect ')'
                    | bit_expr not IN_SYM '(' subselect ')'
                    | bit_expr IN_SYM '(' expr ')'
                    | bit_expr IN_SYM '(' expr ',' expr_list ')'
                    | bit_expr not IN_SYM '(' expr ')'
                    | bit_expr not IN_SYM '(' expr ',' expr_list ')'
                    | bit_expr BETWEEN_SYM bit_expr AND_SYM predicate
                    | bit_expr not BETWEEN_SYM bit_expr AND_SYM predicate
                    | bit_expr SOUNDS_SYM LIKE bit_expr
                    | bit_expr LIKE simple_expr opt_escape
                    | bit_expr not LIKE simple_expr opt_escape
                    | bit_expr REGEXP bit_expr
                    | bit_expr not REGEXP bit_expr
                    | bit_expr
                    ;
                  
                  bit_expr
                    : bit_expr '|' bit_expr 
                    | bit_expr '&' bit_expr
                    | bit_expr SHIFT_LEFT bit_expr 
                    | bit_expr SHIFT_RIGHT bit_expr 
                    | bit_expr '+' bit_expr
                    | bit_expr '-' bit_expr 
                    | bit_expr '+' INTERVAL_SYM expr interval 
                    | bit_expr '-' INTERVAL_SYM expr interval
                    | bit_expr '*' bit_expr
                    | bit_expr '/' bit_expr 
                    | bit_expr '%' bit_expr 
                    | bit_expr DIV_SYM bit_expr 
                    | bit_expr MOD_SYM bit_expr 
                    | bit_expr '^' bit_expr
                    | simple_expr
                    ;
                  

                  推薦答案

                  ANTLR 無法應對 left-recursion,因此沒有簡單的方法可以將 sql_yacc.yy 轉換為 ANTLR 等效項.您可能想查看 ANTLR Wiki 中的以下資源:

                  ANTLR cannot cope with left-recursion, so there's no trivial way to convert sql_yacc.yy into the ANTLR equivalent. You might want to have a look at the following resources from the ANTLR Wiki:

                  • 左遞歸移除
                  • MySQL 方言 (ANTLR v3) 的 SQL 語法

                  請注意,MySQL 語法不完整,但可能會給您一個起點.

                  Note that the MySQL grammar is incomplete, but might give you a starting point.

                  這篇關于如何將 MySQL yacc 語法轉換為 antlr LL(1)?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  How to use windowing functions efficiently to decide next N number of rows based on N number of previous values(如何有效地使用窗口函數根據 N 個先前值來決定接下來的 N 個行)
                  reuse the result of a select expression in the quot;GROUP BYquot; clause?(在“GROUP BY中重用選擇表達式的結果;條款?)
                  Does ignore option of Pyspark DataFrameWriter jdbc function ignore entire transaction or just offending rows?(Pyspark DataFrameWriter jdbc 函數的 ignore 選項是忽略整個事務還是只是有問題的行?) - IT屋-程序員軟件開發技
                  Error while using INSERT INTO table ON DUPLICATE KEY, using a for loop array(使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組)
                  pyspark mysql jdbc load An error occurred while calling o23.load No suitable driver(pyspark mysql jdbc load 調用 o23.load 時發生錯誤 沒有合適的驅動程序)
                  How to integrate Apache Spark with MySQL for reading database tables as a spark dataframe?(如何將 Apache Spark 與 MySQL 集成以將數據庫表作為 Spark 數據幀讀取?)
                  <legend id='0tlhq'><style id='0tlhq'><dir id='0tlhq'><q id='0tlhq'></q></dir></style></legend>

                      <small id='0tlhq'></small><noframes id='0tlhq'>

                        <bdo id='0tlhq'></bdo><ul id='0tlhq'></ul>

                            <tbody id='0tlhq'></tbody>
                        • <i id='0tlhq'><tr id='0tlhq'><dt id='0tlhq'><q id='0tlhq'><span id='0tlhq'><b id='0tlhq'><form id='0tlhq'><ins id='0tlhq'></ins><ul id='0tlhq'></ul><sub id='0tlhq'></sub></form><legend id='0tlhq'></legend><bdo id='0tlhq'><pre id='0tlhq'><center id='0tlhq'></center></pre></bdo></b><th id='0tlhq'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='0tlhq'><tfoot id='0tlhq'></tfoot><dl id='0tlhq'><fieldset id='0tlhq'></fieldset></dl></div>
                          1. <tfoot id='0tlhq'></tfoot>

                            主站蜘蛛池模板: 欧美一区二区三区在线观看 | 日本午夜在线视频 | 国产成人精品久久二区二区 | 日日摸夜夜添夜夜添精品视频 | 久久9999久久 | 九九伊人sl水蜜桃色推荐 | 国产精品美女久久久久久免费 | 国产91亚洲精品一区二区三区 | 欧美中文字幕在线观看 | 在线成人免费视频 | 精品一区二区三区在线视频 | 久久久网| 91视频久久 | 日韩有码一区 | 亚洲午夜精品 | 欧美黑人一区 | 日韩一区二区三区在线视频 | 日韩精品一区二区三区中文在线 | 午夜精品一区 | 2022精品国偷自产免费观看 | 欧美在线观看一区 | 亚洲精品久久嫩草网站秘色 | 成人欧美一区二区三区黑人孕妇 | 男人视频网站 | 99精品视频在线观看 | 国产精品久久久久久久久久免费看 | 在线观看视频你懂得 | 黄色精品 | av香蕉 | 免费观看a级毛片在线播放 黄网站免费入口 | 国产在线一区二区三区 | 九九热在线视频免费观看 | 国产一区二区三区在线视频 | 在线观看中文字幕 | 免费欧美| 伊人精品国产 | 欧美黄色片 | 91免费入口 | 九色国产 | 伊久在线| 99re视频在线 |