docs: ColumnOption::ForeignKey docs have wrong SQL syntax
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Facilidade para iniciantes
- 72/100
- Tipo de issue
- Documentação
- Clareza
- Claramente especificada
- Status de atividade
- Estagnada
- Stack de tecnologia
- rust
- Domínio
- documentation
Direção de pesquisa
Abra a página docs.rs vinculada e localize a documentação de ColumnOption::ForeignKey no código-fonte do repositório. Verifique a sintaxe das restrições de coluna com base nos exemplos da issue, depois corrija a descrição da sintaxe e coloque o literal de sintaxe grande em seu próprio parágrafo. A tarefa estará concluída quando a documentação gerada descrever uma sintaxe de coluna válida sem o prefixo FOREIGN KEY da restrição de tabela.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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.
- Linguagem predominante
- Rust
- Estrelas
- 3.5k
- Forks
- 774
- Merge médio
- 3d 10h
- PRs com merge (30d)
- 15
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de apache/datafusion-sqlparser-rs
-
Dificuldade 2/5 1-2 dias Facilidade para iniciantes 72/100
apache/datafusion-sqlparser-rs#2495 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
apache/datafusion-sqlparser-rs#2461 · 2 comentários ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 73/100
apache/datafusion-sqlparser-rs#2407 ·
-
Add SQL/PGQ keywords Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
apache/datafusion-sqlparser-rs#2393 ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
apache/datafusion-sqlparser-rs#2390 · 1 comentário ·
Todas as issues de apache/datafusion-sqlparser-rs
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
gitbutlerapp/gitbutler#15998 · 1 comentário ·
-
bug triage:deciding
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
open-telemetry/otel-arrow#4132 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100