Esquema de banco de dados

Um esquema de bancos de dados de um sistema de banco de dados é sua estrutura descrita em uma linguagem formal suportada pelo sistema de gerenciamento de banco de dados (SGBD) e refere-se à organização de dados como um diagrama de como um banco de dados é construído (dividido em tabelas de banco de dados no caso de bancos de dados relacionais). A definição formal do esquema de banco de dados é um conjunto de fórmulas (sentenças) chamadas de restrições de integridade impostas no banco de dados. Estas restrições de integridade garantem a compatibilidade entre partes do esquema. Todas as restrições são expressíveis na mesma linguagem. Um banco de dados pode ser considerado uma estrutura em realização da linguagem de banco de dados.[1] Os estados de um esquema conceitual são transformados em um mapeamento explícito, o esquema de banco de dados. Isto descreve como entidades do mundo real são modeladas em um banco de dados.

"Um esquema de banco de dados especifica, com base no conhecimento do administrador de banco de dados de possíveis aplicações, os fatos que podem entrar no banco de dados, ou aqueles de interesse para os possíveis usuários finais."[2] A noção de esquema de banco de dados desempenha o mesmo papel que a noção de teoria no cálculo de predicados. Um modelo desta "teoria" corresponde aproximadamente a um banco de dados, que pode ser visto em qualquer instante de tempo como um objeto matemático. Desta forma, um esquema pode conter fórmulas que representam restrições de integridade especificamente para uma aplicação e as restrições especificamente para um tipo de banco de dados, todas expressadas na mesma linguagem de banco de dados.[1] Em banco de dados relacional, o esquema define as tabelas, campos, relacionamentos, visões, índices, pacotes, procedimentos, funções, filas, gatilhos, tipos, sequências, visões materializadas, sinônimos, enlaces de banco de dados, diretórios, esquemas XML e outros elementos.

Esquemas geralmente são armazenados em um dicionário de dados. Apesar de um esquema ser definido em linguagem de banco de dados de texto, o termo é frequentemente utilizado para se referir a uma representação gráfica da estrutura de banco de dados. Em outras palavras, esquema é a estrutura do banco de dados que define os objetos no banco de dados.

Os objetos de um esquema são estruturas lógicas que se referem diretamente aos dados do banco de dados. Eles incluem estruturas, tais como tabelas, visões, seqüências, procedimentos armazenados, sinônimos, índices, agrupamentos e links de banco de dados. (Não há nenhum relacionamento entre um tablespace e um esquema; os objetos do mesmo esquema podem estar em tablespaces diferentes, e um tablespace pode conter objetos de esquemas diferentes).

Em um sistema de banco de dados Oracle, o termo "esquema" possui uma conotação superficialmente diferente.

Referências

  1. a b Rybinski, H. (1987). «On First-Order-Logic Databases». ACM Transactions on Database Systems. 12 (3): 325-349 
  2. Imielinski, T.; Lipski, W. (1982). «A systematic approach to relational database theory». New York, NY: ACM. Proceedings of the 1982 ACM SIGMOD international conference on Management of data (SIGMOD '82): 8-14. doi:10.1145/582353.582356 

Ver também editar