Sistema de gerenciamento de banco de dados
Origem: Wikipédia, a enciclopédia livre.
Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma base de dados. O principal objetivo é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, manipulação e organização dos dados. O SGBD disponibiliza uma interface para que os seus clientes possam incluir, alterar ou consultar dados. Em bancos de dados relacionais a interface é constituída pelas APIs ou drivers do SGBD, que executam comandos na linguagem SQL.
[editar] Descrição
Um sistema gerenciador de banco de dados é um sistema extremamente complexo, responsável pela persistência, organização e recuperação dos dados. As funções básicas que este sistema deve disponibilizar são:
- um modelo que defina o esquema dos dados armazenados no sistema. Os quatro modelos mais conhecidos são:
- hierárquico;
- em rede;
- relacional;
- orientado a objetos;
- existem também outros modelos, variando com o autor:
- o modelo relacional estendido, é uma adição de características do modelo orientado a objetos ao relacional
- o semi-estruturado é dedicado a documentos em formatos semi-estruturados, normalmente em XML;
- estruturas de dados otimizadas, que possam manipular grandes quantidades de informação;
- uma linguagem que possibilite a criação, atualização e consulta dos dados armazenados. Normalmente esta linguagem é dividida em duas partes:
- Linguagem de definição de dados ou LDD (ou DDL, do inglês), com comandos como CREATE TABLE;
- Linguagem de manipulação de dados, ou LMD (ou DML, do inglês), com comandos como UPDATE e SELECT;
- Linguagem de controle de dados, ou LCD, com comandos para controle de acesso dos usuários do sistema, como GRANT e REVOKE em SQL.
- um mecanismo transacional que garanta a consistência, entre as operações, dos dados armazenados.
Também é possível deinifir uma linguagem adicional para restrições, como a OCL.
As principais linguagens para manipular bancos de dados são:
- SQL, em seus vários padrões, como SQL2 e SQL3;
- OQL.