D (especificação de linguagem de dados) - D (data language specification)
D é um conjunto de prescrições para o que Christopher J. Date e Hugh Darwen acreditam que um sistema de gerenciamento de banco de dados relacional deve ser. É proposto em seu artigo O Terceiro Manifesto , publicado pela primeira vez em 1994 e desenvolvido em vários livros desde então.
Visão geral
D por si só é uma especificação de linguagem abstrata. Não especifica a sintaxe do idioma. Em vez disso, especifica características de linguagem desejáveis e indesejáveis em termos de prescrições e proibições. Portanto, D não é uma linguagem, mas uma família de linguagens implementadas e futuras. Um "D válido" deve ter um certo conjunto de características e excluir um conjunto diferente de características que Date e Darwen consideram imprudente e contrário ao modelo relacional proposto por EF Codd em 1970. Um D válido pode ter características adicionais que estão fora do âmbito dos bancos de dados relacionais .
Tutorial D
Tutorial D é um D específico que é definido e usado para ilustração no Terceiro Manifesto . As implementações de D não precisam ter a mesma sintaxe do Tutorial D. O objetivo do Tutorial D é educacional e mostra como um D pode ser. Rel é uma implementação do Tutorial D.
Implementações
Existem inúmeras implementações de D, com vários graus de maturidade e conformidade.
- A primeira implementação de D é D4 , escrita em C # . D4 é a linguagem carro-chefe da Dataphor de Alphora .
- Rel é a implementação mais completa do Tutorial D (incluindo o Modelo de Herança) e é muito usado no ensino.
- Andl é uma linguagem de programação relacional com backend SQLite ou PostgreSQL e interfaces Thrift .
- Alf - Álgebra relacional na ponta dos dedos , uma implementação Ruby da álgebra relacional inspirada no Tutorial D.
- Projeto: M36 - um sistema de gerenciamento de banco de dados de álgebra relacional matematicamente coerente escrito em Haskell .
- Dee torna o Python relacional.
- Duro - um sistema de gerenciamento de banco de dados relacional
- SIRA_PRISE significa Implementação Simples de uma Álgebra Relacional - Protótipo de um Mecanismo de Armazenamento de Informação Relacional.
- TclRal - Tcl Relational Algebra Library , TclRal é uma implementação da álgebra relacional, baseada nos conceitos do Terceiro Manifesto , como uma extensão da linguagem Tcl .
Referências
- CJ Date e Hugh Darwen (2007, Addison-Wesley) Bancos de dados, tipos e o modelo relacional: O terceiro manifesto , uma terceira edição substituindo a primeira e a segunda edições que são os dois livros listados abaixo. ISBN 0-321-39942-0
- Date, CJ; Darwen, Hugh (1998). Fundamentos para bancos de dados de objetos / relacionais : O Terceiro Manifesto: um estudo detalhado do impacto dos objetos e da teoria dos tipos no modelo relacional de dados, incluindo uma proposta abrangente para herança de tipos (1ª ed.). Leitura , MA : Addison-Wesley . xxi, 496. ISBN 0-201-30978-5 . LCCN 98010364 . OCLC 38431501 . LCC QA76.9.D3 D15994 1998 .
- Date, CJ; Darwen, Hugh (2000). Foundation for Future Database Systems: The Third Manifesto: um estudo detalhado do impacto da teoria de tipo no modelo relacional de dados, incluindo um modelo abrangente de herança de tipo (2ª ed.). Leitura , MA : Addison-Wesley Professional. xxiii, 547. ISBN 0-201-70928-7 . LCCN 00035527 . OCLC 43662285 . LCC QA76.9.D3 D3683 2000 .