apache / apache/datafusion-sqlparser-rs

docs: ColumnOption::ForeignKey docs have wrong SQL syntax

Ouverte Adaptée aux débutants
#1,761 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Rust
Étoiles
3.5k
Forks
772
Merge moyen
4 j 9 h
PR mergées (30 j)
17

Description

https://docs.rs/sqlparser/0.55.0/sqlparser/ast/enum.ColumnOption.html#variant.ForeignKey

says

> A referential integrity constraint (`[FOREIGN KEY REFERENCES () { [ON DELETE ] [ON UPDATE ] | [ON UPDATE ] [ON DELETE ] } []`).

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:

```sql
-- wrong
CREATE TABLE myschema.mytable (
mycolumn BIGINT NOT NULL,
PRIMARY KEY(mycolumn),
bar BIGINT FOREIGN KEY REFERENCES foo (bar));
```

This does:

```sql
-- 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.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Ouvrez la page docs.rs liée et localisez la documentation de ColumnOption::ForeignKey dans le code source du dépôt. Vérifiez la syntaxe des contraintes de colonne par rapport aux exemples de l’issue, puis corrigez la description de la syntaxe et placez le grand littéral de syntaxe dans son propre paragraphe. Le travail est terminé lorsque la documentation générée décrit une syntaxe de colonne valide sans le préfixe FOREIGN KEY de la contrainte de table.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
rust
Domaine
documentation
Type d'issue
Documentation
Difficulté
1/5
Temps estimé
Moins d'une heure
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
72/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.