Banco de Dados: Repassando
O que é Banco de Dados?
Segundo Korth, um banco de dados “é uma coleção de dados inter-relacionados, representando informações sobre um domínio específico”, ou seja, sempre que for possível agrupar informações que se relacionam e tratam de um mesmo assunto, posso dizer que tenho um banco de dados.Podemos exemplificar situações clássicas como uma lista telefônica, um catálogo de CDs ou um sistema de controle de RH de uma empresa.
Já um sistema de gerenciamento de banco de dados (SGBD) é um software que possui recursos capazes de manipular as informações do banco de dados e interagir com o usuário. Exemplos de SGBDs são: Oracle, SQL Server, DB2, PostgreSQL, MySQL, o próprio Access ou Paradox, entre outros.
Por último, temos que conceituar um sistema de banco de dados como o conjunto de quatro componentes básicos: dados, hardware, software e usuários. Date conceituou que “sistema de bancos de dados pode ser considerado como uma sala de arquivos eletrônica”. A Figura 1 ilustra os componentes de um sistema de banco de dados.
Confira nossa Guia de Banco de Dados para Programadores
DevCast: Quatro dicas de banco de dados
Abstração de dados
O sistema de banco de dados deve garantir uma visão totalmente abstrata do banco de dados para o usuário, ou seja, para o usuário do banco de dados pouco importa qual unidade de armazenamento está sendo usada para guardar seus dados, contanto que os mesmos estejam disponíveis no momento necessário.Esta abstração se dá em três níveis (Figura 2):
- Nível de visão do usuário: as partes do banco de dados que o usuário tem acesso de acordo com a necessidade individual de cada usuário ou grupo de usuários;
- Nível conceitual: define quais os dados que estão armazenados e qual o relacionamento entre eles;
- Nível físico: é o nível mais baixo de abstração, em que define efetivamente de que maneira os dados estão armazenados.
Projeto de banco de dados
Todo bom sistema de banco de dados deve apresentar um projeto, que visa a organização das informações e utilização de técnicas para que o futuro sistema obtenha boa performance e também facilite infinitamente as manutenções que venham a acontecer.O projeto de banco de dados se dá em duas fases:
- Modelagem conceitual;
- Projeto lógico.
Saiba mais sobre modeladem de dados
Modelo conceitual
É a descrição do BD de maneira independente ao SGBD, ou seja, define quais os dados que aparecerão no BD, mas sem se importar com a implementação que se dará ao BD. Desta forma, há uma abstração em nível de SGBD.Uma das técnicas mais utilizadas dentre os profissionais da área é a abordagem entidade-relacionamento (ER), onde o modelo é representado graficamente através do diagrama entidade-relacionamento (DER) (Figura 3).
Modelo lógico
Descreve o BD no nível do SGBD, ou seja, depende do tipo particular de SGBD que será usado. Não podemos confundir com o Software que será usado. O tipo de SGBD que o modelo lógico trata é se o mesmo é relacional, orientado a objetos, hierárquico, etc.Abordaremos o SGBD relacional, por serem os mais difundidos. Nele, os dados são organizados em tabelas (Quadro 1).
Aluno | ||
mat_aluno
|
nome
|
endereco
|
1
|
Cecília Ortiz Rezende | Rua dos Ipês, 37 |
2
|
Abílio José Dias | Avenida Presidente Jânio Quadros, 357 |
3
|
Renata Oliveira Franco | Rua Nove de Julho, 45 |
Turma | ||
cod_turma | sala | periodo |
1 | 8 | Manhãnte |
2 | 5 | Noite |
Quadro 1. Exemplo de tabelas em um SGBD relacional
O modelo lógico do BD relacional deve definir quais as tabelas e o nome das colunas que compõem estas tabelas.Para o nosso exemplo, poderíamos definir nosso modelo lógico conforme o seguinte:
Aluno(mat_aluno, nome, endereco)
Turma (cod_turma, sala, periodo)
Referências bibliográficas
KORTH, H.F. e SILBERSCHATZ, A.; Sistemas de Bancos de Dados, Makron Books, 2a. edição revisada, 1994.DATE, C.J.; Int. a Sistemas de Bancos de Dados, tradução da 4a.edição norte-americana, Editora Campus, 1991.
Curso relacionado: Modelagem de Bancos de Dados Relacionais
Links Úteis
- JPQL: Escrevendo consultas na JPA:
Aprender a consultar dados armazenados em bancos de dados relacionais é um importante passo na construção de sistemas. - Laravel: Como implementar um CRUD N:N:
Neste curso veremos como desenvolver um CRUD em Laravel utilizando duas entidades que se relacionam de forma N:N. - PHP e MVC: Como fazer um CRUD 1:N:
Neste curso você aprenderá a implementar um sistema de CRUD com duas entidades que se relacionam de forma 1:N em PHP, usando para isso o padrão arquitetural MVC.
Saiba mais sobre SQL ;)
- Guias Banco de Dados:
Aqui você encontra o Guia de estudo ideal para aprimorar seus conhecimentos nos principais Banco de Dados do mercado. Escolha o seu e bons estudos! - Banco de Dados para Programadores:
Neste guia você encontrará os principais conteúdos que você precisa estudar, como programador, para trabalhar com bancos de dados. - Guia de Linguagem SQL:
Neste Guia de Referência você encontrará todo o conteúdo que precisa para aprender sobre a SQL, linguagem de consulta estruturada utilizada por programadores e DBAs para a execução de consultas e comandos nos principais SGBDs do mercado. - Canal Banco de Dados:
Além dos últimos posts da revista SQL Magazine, listamos os últimos artigos, vídeos e cursos sobre os principais banco de dados existentes hoje no mercado. - Revista SQL Magazine 149:
Edição que tem como destaque o aprimoramento da sua auditoria: conheça o Oracle Audit Vault Server.
Qual e o programa ideal para compilar esta linguagem??
ResponderEliminarespero mais assuntos relacionados a banco de dados.
ResponderEliminarObrigado