docs: ColumnOption::ForeignKey docs have wrong SQL syntax
まだ誰も着手していません。
評価
- 難易度
- 1/5
- 見積もり時間
- 1時間未満
- 初心者へのやさしさ
- 72/100
- issue の種類
- ドキュメント
- 明瞭さ
- 明確に書かれている
- 活発さ
- 停滞
- 技術スタック
- rust
調査の方向性
リンク先のdocs.rsページを開き、リポジトリのソース内でColumnOption::ForeignKeyのドキュメントを見つけてください。issueの例と照らし合わせてカラム制約の構文を確認し、その後、構文の説明を修正して、大きな構文リテラルを独立した段落に配置してください。生成されたドキュメントが、テーブル制約のプレフィックスであるFOREIGN KEYなしで有効なカラム構文を記述していれば完了です。
索引モデルが issue の本文から書いたものです。
説明
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.
- 主要言語
- Rust
- スター
- 3.5k
- フォーク
- 774
- 平均マージ
- 3日 10時間
- マージ済み PR(30日)
- 15
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/datafusion-sqlparser-rs のほかの issue
-
難易度 2/5 1〜2日 初心者へのやさしさ 72/100
apache/datafusion-sqlparser-rs#2495 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
apache/datafusion-sqlparser-rs#2461 · コメント 2 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
apache/datafusion-sqlparser-rs#2407 ·
-
Add SQL/PGQ keywords オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
apache/datafusion-sqlparser-rs#2393 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
apache/datafusion-sqlparser-rs#2390 · コメント 1 件 ·
apache/datafusion-sqlparser-rs の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
gitbutlerapp/gitbutler#15998 · コメント 1 件 ·
-
bug triage:deciding
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
open-telemetry/otel-arrow#4132 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100