apache / apache/datafusion-sqlparser-rs

Support postgresql on commit for ctas

Aperta
#1,274 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
3.5k
Fork
772
Merge medio
4g 9h
PR unite (30g)
17

Descrizione

Add support for postgresql `[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]`. Currently panics:

```
use sqlparser::dialect::PostgreSqlDialect;
use sqlparser::parser::Parser;

fn main() {
let sql = "create local temporary table test on commit preserve rows as select 1 as a;";

let dialect = PostgreSqlDialect {};

let ast = Parser::parse_sql(&dialect, sql).unwrap();

for stmt in ast.iter() {
println!("{}", stmt.to_string())
}
}
```

`ParserError("Expected end of statement, found: as at Line: 1, Column 59")`

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia con i punti di ingresso PostgreSqlDialect e Parser::parse_sql mostrati nella riproduzione, quindi esegui l'esempio SQL fornito. Il lavoro è completato quando l'istruzione viene analizzata e formattata correttamente, supportando PRESERVE ROWS, DELETE ROWS e DROP dopo ON COMMIT.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
postgresql, rust
Ambito
databases
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.