apache / apache/datafusion-sqlparser-rs
Can't evaluate `CREATE TABLE` with `INDEX` in MySQL
- Lingua principale
- Rust
- Stelle
- 3.5k
- Fork
- 772
- Merge medio
- 4g 9h
- PR unite (30g)
- 17
Descrizione
`sqlparser-rs` couldn't evaluate following MySQL statement.
```mysql
CREATE TABLE users (id INT, name VARCHAR(10), INDEX (id));
```
Evaluating this statement by using cli caused following error.
```
[nannany@nannanynoMBP sqlparser-rs (main %=)]$ cargo run --example cli create_table.sql --mysql
Finished dev [unoptimized + debuginfo] target(s) in 0.02s
Running `target/debug/examples/cli create_table.sql --mysql`
Parsing from file 'create_table.sql' using MySqlDialect
2022-04-17T07:36:14.347Z DEBUG [sqlparser::parser] Parsing sql 'CREATE TABLE users (id INT, name VARCHAR(10), INDEX (id));
'...
Error during parsing: ParserError("Expected a data type name, found: (")
```
I tried version 0.16.0.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia riproducendo l'istruzione con l'esempio CLI usando MySqlDialect e l'input create_table.sql fornito. Traccia l'errore del parser per la clausola INDEX a livello di tabella, quindi aggiungi la copertura per questa istruzione MySQL e verifica che venga analizzata correttamente senza introdurre regressioni nelle altre forme di CREATE TABLE.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- mysql, rust
- Ambito
- databases
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 48/100