docs: ColumnOption::ForeignKey docs have wrong SQL syntax
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- Moins d'une heure
- Accessibilité débutants
- 72/100
- Type d'issue
- Documentation
- Clarté
- Clairement spécifiée
- Activité
- À l'abandon
- Stack technique
- rust
- Domaine
- documentation
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.
Description
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.
- Langage dominant
- Rust
- Étoiles
- 3.5k
- Forks
- 774
- Merge moyen
- 3 j 10 h
- PR mergées (30 j)
- 15
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de apache/datafusion-sqlparser-rs
-
Difficulté 2/5 1-2 jours Accessibilité débutants 72/100
apache/datafusion-sqlparser-rs#2495 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/datafusion-sqlparser-rs#2461 · 2 commentaires ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 73/100
apache/datafusion-sqlparser-rs#2407 ·
-
Add SQL/PGQ keywords Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
apache/datafusion-sqlparser-rs#2393 ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
apache/datafusion-sqlparser-rs#2390 · 1 commentaire ·
Toutes les issues de apache/datafusion-sqlparser-rs
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
gitbutlerapp/gitbutler#15998 · 1 commentaire ·
-
bug triage:deciding
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
open-telemetry/otel-arrow#4132 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100