Banco de dados ou Database (DB) tem esse nome por ser uma recurso na qual é possível armazenar dados de maneira estruturada (armazenamento com base em tabelas), essa estrutura ajuda a diminuir a redundância de dados gerenciando os processos de armazenamento. O banco de dados se comunica pelo relacionamento de entidades (tabelas), que são associações entre uma ou várias entidades, e podem ser divididos entre graus de relacionamento. E existem vários tipos, um exemplo é o auto relacionamento (relacionamento recursivo) as entidades devem ser do mesmo tipo, mas terem pápeis diferentes.
Figura 1 – Relacionamento de Entidades
Um sistema de banco de dados é um sistema de manutenção de registros por computador envolvendo quatro componentes principais, sendo eles Dados, Hardware, software e usuário. Um sistema de banco de dados pode ser considerado uma sala de arquivos eletrônicos, e existem vários tipos de métodos, técnicas e ferramentas que visam ajudar o manuseio do banco de dados.
O banco de dados é gerenciado pelos SGBD (Sistemas gerenciadores de banco de dados) ou em inglês DBMS (Database Manager System) que é um conjunto de serviços (aplicações software), tem como principal função retirar da aplicação cliente a responsabilidade de gerir o acesso, a manipulação e organização de dados, e assim ajudando a melhorar o gerenciamento do banco de dados, ou seja, permite o acesso ao banco de dados de maneira simples, e facilita a definir, construir e manipular dados presentes (inserção, modificação, deleção), e o SGBD é dividido em três níveis de arquitetura:
Nível físico – é como os dados estão armazenados e organizados internamente pelo SGBD – Sistema de Gestão de Banco de Dados.
Nível conceitual – é responsável por representar a visão dos dados e a relação entre eles na visão do usuário comum, exemplo: números, tipos de campos e relacionamentos dos dados.
Nível externo – corresponde a forma como os dados são apresentados ao utilizar final através de interfaces gráficas (formulários ou tela com informações).
Figura 2 – Arquitetura de um SGBD
Todo Sistema Gerenciador de Banco de Dados (SGBD) deve oferecer aos seus usuários e administradores meios de criar definições de dados, bem como manipular esses dados armazenados em suas bases. De modo que, a linguagem SQL (Strutured Query Language) ou Linguagem de consulta estruturada, que é a linguagem padrão para Sistemas Gerenciadores de Banco de Dados (SGBD), alguns dos principais sistemas que utiliza o SQL são: Mysql, Oracle, FireBird, PostgreSQL (Codigo aberto), HSQLDB (Código aberto e escrito em Java). SQL é uma linguagem essencialmente declarativa. Isso significa que o programador necessita apenas de indicar qual o objetivo pretendido para que seja executado pelo SGBD.
Apesar da SQL ser conhecida com uma “Linguagem de consulta”, ela oferece também recursos para definir a estrutura dos dados, por exemplo – CRUD (inserção, consulta, atualização, exclusão).
Ou seja, banco de dados não é nada mais que uma coleção de dados inter-relacionados, que apresenta um domínio especifico.
Leia também aqui.