docs: ColumnOption::ForeignKey docs have wrong SQL syntax
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 1/5
- Tempo stimato
- Meno di un'ora
- Idoneità per principianti
- 72/100
- Tipo di issue
- Documentazione
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Ferma
- Stack tecnologico
- rust
- Ambito
- documentation
Direzione di ricerca
Apri la pagina docs.rs collegata e individua la documentazione di ColumnOption::ForeignKey nel codice sorgente del repository. Verifica la sintassi dei vincoli di colonna rispetto agli esempi nell’issue, quindi correggi la descrizione della sintassi e inserisci il grande letterale di sintassi in un paragrafo separato. Il lavoro è completo quando la documentazione generata descrive una sintassi di colonna valida senza il prefisso FOREIGN KEY del vincolo di tabella.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.ColumnOption.html#variant.ForeignKey
says
A referential integrity constraint (
[FOREIGN KEY REFERENCES <foreign_table> (<referred_columns>) { [ON DELETE <referential_action>] [ON UPDATE <referential_action>] | [ON UPDATE <referential_action>] [ON DELETE <referential_action>] } [<constraint_characteristics>]).
I believe the FOREIGN KEY (name) REFERENCES syntax is only for table constraints. That's why it has to say which source columns it talks about!
I believe the syntax for column constraints is just col_name REFERENCES othertable (othercolumn).
As far as I can tell, the sqlparser-rs is already correct. For example, this won't parse:
-- wrong
CREATE TABLE myschema.mytable (
mycolumn BIGINT NOT NULL,
PRIMARY KEY(mycolumn),
bar BIGINT FOREIGN KEY REFERENCES foo (bar));
This does:
-- good
CREATE TABLE myschema.mytable (
mycolumn BIGINT NOT NULL,
PRIMARY KEY(mycolumn),
bar BIGINT REFERENCES foo (bar));
While we're at it, that big syntax literal should live in its own paragraph.
- Lingua principale
- Rust
- Stelle
- 3.5k
- Fork
- 774
- Merge medio
- 3g 10h
- PR unite (30g)
- 15
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/datafusion-sqlparser-rs
-
Difficoltà 2/5 1-2 giorni Idoneità per principianti 72/100
apache/datafusion-sqlparser-rs#2495 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datafusion-sqlparser-rs#2461 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
apache/datafusion-sqlparser-rs#2407 ·
-
Add SQL/PGQ keywords Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
apache/datafusion-sqlparser-rs#2393 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
apache/datafusion-sqlparser-rs#2390 · 1 commento ·
Tutte le issue di apache/datafusion-sqlparser-rs
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
gitbutlerapp/gitbutler#15998 · 1 commento ·
-
bug triage:deciding
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
open-telemetry/otel-arrow#4132 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100