dongzl opened a new pull request #13499:
URL: https://github.com/apache/shardingsphere/pull/13499


   Fixes #13145 .
   
   Changes proposed in this pull request:
   - Add cache index DAL SQL parser for MySQL.
   - Add cache index DAL SQL parser test case for MySQL.
   
   
   [CACHE INDEX 
Statement](https://dev.mysql.com/doc/refman/8.0/en/cache-index.html)
   ```
   CACHE INDEX {
         tbl_index_list [, tbl_index_list] ...
       | tbl_name PARTITION (partition_list)
     }
     IN key_cache_name
   
   tbl_index_list:
     tbl_name [{INDEX|KEY} (index_name[, index_name] ...)]
   
   partition_list: {
       partition_name[, partition_name] ...
     | ALL
   }
   ```
   
   The `CACHE INDEX` antlr grammer is:
   
   ```
   cacheIndex
       : CACHE INDEX (tableIndexList (COMMA_ tableIndexList)* | tableName 
PARTITION LP_ partitionList RP_) IN (identifier | DEFAULT)
       ;
   
   tableIndexList
       : tableName (PARTITION LP_ partitionList RP_)? ((INDEX | KEY) LP_ 
indexName (COMMA_ indexName)* RP_)? (IGNORE LEAVES)?
       ;
   
   partitionList
       : partitionName (COMMA_ partitionName)* | ALL
       ;
   ```
   
   I think the `tableIndexList` is not correct, so I modify it:
   ```
   tableIndexList
       : tableName ((INDEX | KEY) LP_ indexName (COMMA_ indexName)* RP_)? 
(IGNORE LEAVES)?
       ;
   ```
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to