You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@community.apache.org by "Thanoshan MV (Jira)" <ji...@apache.org> on 2021/01/21 08:50:00 UTC

[jira] [Issue Comment Deleted] (COMDEV-385) Apache ShardingSphere: Proofread the SQL definitions for ShardingSphere Parser

     [ https://issues.apache.org/jira/browse/COMDEV-385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thanoshan MV updated COMDEV-385:
--------------------------------
    Comment: was deleted

(was: Hi Trista, 

I would like to do more tasks related to COMDEV-385. I think this will allow me to explore more into the project and have a better understanding. I'm okay with any of your tasks and suggestions. 

 

Thank you,

Thanoshan)

> Apache ShardingSphere: Proofread the SQL definitions for ShardingSphere Parser
> ------------------------------------------------------------------------------
>
>                 Key: COMDEV-385
>                 URL: https://issues.apache.org/jira/browse/COMDEV-385
>             Project: Community Development
>          Issue Type: Improvement
>          Components: GSoC/Mentoring ideas
>            Reporter: Juan Pan
>            Priority: Major
>              Labels: Mentor, ShardingSphere, gsoc2021
>
> h3. Apache ShardingSphere
> Apache ShardingSphere is a distributed database middleware ecosystem, including 2 independent products, ShardingSphere JDBC and ShardingSphere Proxy presently. They all provide functions of data sharding, distributed transaction, and database orchestration.
>  *Page*: [https://shardingsphere.apache.org|https://shardingsphere.apache.org/]
>  *Github*: [https://github.com/apache/shardingsphere]
> h3. Background
> ShardingSphere parser engine helps users parse a SQL to get the AST (Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). At present, this parser engine can handle SQLs for `MySQL`, `PostgreSQL`, `SQLServer` and `Oracle`, which means we have to understand different database dialect SQLs.
>  *More details*: [https://shardingsphere.apache.org/document/current/en/features/sharding/principle/parse/]
> h3. Task
> This issue is to proofread the DML(SELECT/UPDATE/DELETE/INSERT) SQL definitions for Oracle. As we have a basic [Oracle SQL syntax definitions|https://github.com/apache/shardingsphere/tree/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle] but do not keep in line with [Oracle DOC|https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-CE009C87-4AA6-45BF-9A0D-2B2C5FFB47B3], we need you to find out the vague SQL grammar definitions and correct them referring to Oracle DOC.
> *Notice*, when you review these DML(SELECT/UPDATE/DELETE/INSERT) SQLs, you will find that these definitions will involve some basic elements of Oracle SQL. No doubt, these elements are included in this task as well.
> h3. Relevant Skills
> 1. Master JAVA language
>  2. Have a basic understanding of Antlr g4 file
>  3. Be familiar with Oracle SQLs
> h3. Targets files
> 1. DML SQLs g4 file: [https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DMLStatement.g4]
>  2. Basic elements g4 file: [https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4]
> h3. References
> 1. Oracle SQL quick reference: [https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-1FA35EAD-AED2-4619-BFEE-348FF05D1F4A]
>  2. Detailed Oracle SQL info: [https://docs.oracle.com/pls/topic/lookup?ctx=en/database/oracle/oracle-database/19/sqlqr&id=SQLRF008]
> h3. Mentor
> Juan Pan, PMC of Apache ShardingSphere, [mailto:panjuan@apache.org]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@community.apache.org
For additional commands, e-mail: dev-help@community.apache.org