apache / apache/datafusion-sqlparser-rs

Duplicate column in CREATE TABLE statement

Offen
#668 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Rust
Sterne
3.5k
Forks
772
Ø Merge
4 T. 9 Std.
Gemergte PRs (30 T.)
17

Beschreibung

SQLite raises a parser error with the following DDL:
```sh
sqlite> CREATE TABLE test (
...> x TEXT,
...> x TEXT
...> );
Parse error: duplicate column name: x
```
But `sqlparser` doesn't:

```sh
% cargo run --example cli ddl.sql --sqlite
...
Round-trip:
'CREATE TABLE test (x TEXT, x TEXT)'
Parse results:
[
CreateTable {
...
```
Is this kind of checks considered out of scope ?
Thanks.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Reproduziere die Abweichung mit dem SQLite-DDL und dem Befehl `cargo run --example cli ddl.sql --sqlite`. Beginne damit nachzuverfolgen, wie die CREATE TABLE-Anweisung geparst wird, und bestimme dann, ob doppelte Spaltennamen abgelehnt werden sollten. Erledigt ist die Aufgabe, wenn das Verhalten des Parsers für diese Eingabe festgelegt und konsistent abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust, sql
Bereich
databases
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.