Você está na página 1de 9

Informática

BANCO DE DADOS

Introdução ao Banco de Dados

Muitos autores definem Bancos de Dados (BD) de forma diferente, porém todas as definições
passam uma ideia de coleção ou conjunto de dados armazenados que servem ou são usados
por algumas situações específicas. A definição de banco de dados como "uma coleção de dados
relacionados" é muito geral.
Por exemplo, considere a coleção de palavras deste texto como sendo dados relacionados, que
constituem banco de dados. Entretanto, o uso comum do termo ‘banco de dados’ é usualmen-
te mais restrito.
O conceito de banco de dados está muito presente em nosso dia a dia e faz parte de nossa vida.
Um banco de dados desempenha um papel crítico em muitas áreas onde computadores são
utilizados.
O BD está presente em muitas áreas diferentes (negócios, engenharia, educação, medicina,
etc.). Um arranjo aleatório de dados não pode ser considerado um banco de dados.

Conceitos Básicos

Definições comuns
1. 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, pode-se dizer que hà um banco de dados.
2. É uma coleção de dados logicamente coerente que possui um significado implícito cuja in-
terpretação dada por uma determinada aplicação;
3. Representa abstratamente uma parte do mundo real, conhecida como Minimundo ou Uni-
verso de Discurso (UD), que é de interesse de certa aplicação.
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.

www.acasadoconcurseiro.com.br 3
Por último, temos que conceituar um sistema de BD como o conjunto de quatro componentes
básicos: dados, hardware, software e usuários.
Os objetivos de um sistema de BD são o de isolar o usuário dos detalhes internos do banco de
dados (promover a abstração de dados) e promover a independência dos dados em relação às
aplicações, ou seja, tornar independente da aplicação a estratégia de acesso e a forma de ar-
mazenamento.

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 ar-
mazenamento está sendo usada para guardar seus dados, contanto que estes estejam disponí-
veis no momento necessário.
Essa abstração se dá em três níveis de arquitetura:
•• Nível de visão do usuário: as partes do BD a que o usuário tem acesso de acordo com a ne-
cessidade individual 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 ou interno: é o nível mais baixo de abstração, que define efetivamente de que
maneira os dados estão armazenados.

Modelo conceitual

É a descrição do BD de maneira independente ao SGBD, ou seja, define quais os dados que apa-
recerão no BD, mas sem se importar com a implementação que se dará a ele. Dessa forma, há
uma abstração em nível de SGBD.
Uma das técnicas mais utilizadas dentre os profissionais da área é a abordagem entidade-rela-
cionamento (ER), em que o modelo é representado graficamente através do diagrama entida-
de-relacionamento (DER).

4 www.acasadoconcurseiro.com.br
Informática – Banco de Dados – Prof. Márcio Hunecke

Figura 1 – Exemplo de diagrama entidade-relacionamento

O modelo acima, entre outras coisas, traz informações sobre alunos e turmas. Para cada aluno,
será armazenado seu número de matrícula, seu nome e endereço, enquanto para cada turma,
teremos a informação de seu código, a sala utilizada e o período.

Modelo Lógico

O 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.
Abordaremos o SGBD relacional, por ser a exigência da grande maioria das provas. Nele, os da-
dos são organizados em tabelas.

Aluno
mat_aluno Nome Endereço
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 Período
1 8 Manhã
2 5 Noite

O modelo lógico do BD relacional deve definir quais as tabelas e o nome das colunas que com-
põ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)
É importante salientar que os detalhes internos de armazenamento, por exemplo, não são des-
critos no modelo lógico, pois essas informações fazem parte do modelo físico, que nada mais é
do que a tradução do modelo lógico para a linguagem do software escolhido para implementar o
sistema.

www.acasadoconcurseiro.com.br 5
Abstração de Dados

O grande objetivo de um sistema de BD é oferecer uma visão “abstrata” dos dados aos usu-
ários. Os detalhes referentes à forma como esses dados estão armazenados e mantidos não
interessa aos usuários, mas a disponibilidade eficiente desses dados é fundamental..

O conceito de abstração está associado à característica de se observar somente os aspectos de


interesse, sem se preocupar com maiores detalhes envolvidos.
No contexto de abstração de dados um BD pode ser visto sem se considerar a forma como os
dados estão armazenados fisicamente.
Exemplo:
Um programador de aplicação não precisa se importar com aspectos físicos de armazenamento
dos dados.

Dados e Informações

Dado denota um fato que pode ser registrado e possui significado implícito.
Considere o nome e o endereço de todas as pessoas que você conhece.
Informação denota uma organização em relação a um conteúdo.

Propriedades Implícitas de Banco de Dados

•• Um BD é uma coleção logicamente coerente de dados com algum significado inerente


•• Um BD é projetado e construído com dados para um propósito específico
•• Ele possui um grupo de usuários e algumas aplicações preconcebidas, as quais esses
usuários estão interessados.

6 www.acasadoconcurseiro.com.br
Informática – Banco de Dados – Prof. Márcio Hunecke

Diferenças Entre Banco de Dados e Sistemas de Arquivos

Banco de Dados
•• Um único repositório de dados é mantido.
•• Acesso de todos os usuários ao mesmo BD com único espaço de armazenamento
•• Atualização dos dados em apenas uma estrutura de BD

Sistema de Arquivos
•• Implementa os arquivos necessários para uma aplicação específica.
•• Redundância de arquivos armazenando os mesmos dados com
•• Perda de espaço de armazenamento
•• Esforço adicional para atualização dos dados

Terminologia Básica Em Banco De Dados

Campo – unidade básica de informação mínima com significado


Registro – conjunto de campos
Arquivo – conjunto de registros
Banco de Dados (BD) – conjunto de arquivos e as formas de manipulação

www.acasadoconcurseiro.com.br 7
Sistema Gerenciador De Banco De Dados - SGBD

Um Sistema Gerenciador de Banco de Dados (SGBD) é uma coleção de programas que habili-
tam usuários a criar e manter um banco de dados.
O SGBD é um software de propósito geral, que facilita o processo de definição, construção e
manipulação de um banco de dados.
Definição de banco de dados envolve especificar estruturas e tipos de dados para serem grava-
dos no banco de dados, com uma descrição detalhada de cada tipo de dado. Construção de um
banco de dados é o processo de consistir e gravar inicialmente dados no banco de dados.
Manipulação de um banco de dados inclui funções como consulta por dados específicos e atua-
lização para refletir as alterações no mundo real.

Principais Atribuições de um SGBD

Um BD não contém somente os dados de conteúdo armazenados, ele também armazena defi-
nições e descrições sobre a estrutura que forma o BD (metadados).
O catálogo do sistema (metadados) contém definições da estrutura de cada arquivo, o tipo e
formato de armazenamento de cada item de dados e várias restrições dos dados.
Esse catálogo é usado pelo SGBD e ocasionalmente por algum usuário do BD (não é específico,
mas geral, atendendo às diversas necessidades de arquivos diferentes).

Características de um SGBD

•• Controle sobre a redundância


•• Espaço para armazenamento
•• Duplicação de esforços
•• Inconsistência na base de dados
•• Compartilhamento de dados
•• Restrição de acesso não autorizado: Possui um sistema de segurança garantindo o acesso
específico a cada usuário (personalizado para grupos ou individual), garantindo assim se-
gurança no acesso ao BD, diferentes permissões de operação no BD, proteção de contas
pessoais (ou grupo) por senhas, segurança no uso do próprio SGBD como nas criações de
novas contas.
•• Fornecimento de múltiplas interfaces (visões): Diversos níveis de conhecimento entre os
usuários, em que o BD deve oferecer vários tipos de acesso aos dados.
•• Forçar restrições de integridade: armazenamento de vários tipos de dados (inteiro, real,
lógico), relacionamentos entre os dados, obrigatoriedade ou não de informação do dado
(nulo ou não nulo), unicidade do dado (chave primária), dificultar a ocorrência de erros.

8 www.acasadoconcurseiro.com.br
Informática – Banco de Dados – Prof. Márcio Hunecke

•• Sistema de Backup e Recovery: capacidade de salvamento e recuperação dos dados.


•• Facilidade e controle do BD no caso de falha do hardware ou do software, realizandouma
recuperação da situação anteriormente encontrada, evitando duplicidade e dados incon-
sistentes.

Abordagem Relacional

Um BD relacional possui apenas um tipo de construção, a tabela. Uma tabela é composta por
linhas (tuplas) e colunas (atributos). Os relacionamentos entre os dados também são represen-
tados ou por tabelas, ou por meio da reprodução dos valores de atributos.

Tabelas
Uma tabela é um conjunto não ordenado de linhas (tuplas ou registros). Cada linha é composta
por uma série de colunas (atributos ou campos).
Cada campo é identificado por um nome de campo (nome de atributo). Um conjunto de cam-
pos homônimos de todas as linhas de uma tabela é uma coluna.
Comparando tabelas de um banco de dados relacional com um arquivo convencional, observa-
mos as seguintes diferenças:
•• As linhas de uma tabela não têm ordenação. A ordem de recuperação é arbitrariamente
estabelecida pelo banco de dados.
•• Os valores de campo de uma tabela são atômicos e monovalorados;
•• As linguagens de consulta a bases de dados relacionais permitem o acesso por quaisquer
critérios envolvendo os campos de uma ou mais linhas. Não há necessidade de especificar
caminhos de acesso.

Chaves
Chaves são um conceito básico que permitem identificar linhas e estabelecer relações entre
linhas e tabelas de um banco de dados relacional. Em um banco de dados relacional, há pelo
menos quatro tipos de chaves a serem consideradas: chaves primárias, chaves estrangeiras,
candidatas e chaves alternativas
É por meio das chaves que conseguimos estabelecer as regras para que o SGBD possa manter a
integridade referencial.

Chave Primária
As chaves primárias são uma coluna (ou um conjunto delas) dentro de uma tabela que distin-
gue uma linha das demais. As chaves primárias podem ser compostas por mais de uma coluna,
entretanto, devem sempre respeitar o princípio da minimalidade. Uma chave é mínima quando
todas as suas colunas forem efetivamente necessárias para garantir o requisito da unicidade de
valores da chave.

www.acasadoconcurseiro.com.br 9
Na abordagem relacional, ao contrário dos sistemas convencionais de arquivos, por exemplo, uma
chave não é um índice ou qualquer outra estrutura de acesso. As chaves fazem apenas as restrições
de integridade, ou seja, regras que devem ser obedecidas em todos o estados válidos do BD.

Chave Estrangeira
Uma chave estrangeira é uma coluna ou uma combinação de colunas cujos valores aparecem
necessariamente na chave primária de uma outra tabela. A chave estrangeira é o mecanismo
que permite a implementação de relacionamentos em bancos de dados relacionais.
A existência de chaves estrangeiras impõe restrições que devem ser garantidas ao executar di-
versas operações de alterações no banco de dados.
I – Inclusão de uma linha na tabela que contém a chave estrangeira: nesse caso, deve-se garan-
tir que o valor contido na chave estrangeira apareça na coluna da chave primária referenciada.
II – Alteração do valor de uma chave estrangeira: deve-se assegurar que o novo valor aparece
na coluna da chave primária referenciada;
III – Exclusão de uma linha da tabela que contém a chave primária referenciada pela chave es-
trangeira: deve ser garantido que, na coluna da chave estrangeira, não apareça o valor da chave
primária que será excluída.
IV – Alteração do valor da chave primária referenciada pela chave estrangeira: deve ser garantido
que, na coluna da chave estrangeiras não apareça o valor da chave primária que está sendo alte-
rada. Uma chave estrangeira, não referencia, necessariamente, outra tabela. Em um auto relacio-
namento, o valor da chave estrangeira é o próprio valor da chave primária da mesma tabela.

Restrições de Integridade

Um dos objetivos primordiais de um SGBD é a integridade de dados. Dizer que os dados de um


banco são íntegros significa dizer que eles refletem corretamente a realidade apresentada pelo
BD e são consistentes entre si. Uma restrição de integridade é uma regra de consistência de
dados mantida pelo próprio SGBD. Na abordagem relacional, as restrições de integridade são
abordadas nas categorias que seguem:

Integridade de entidade
Especifica que nenhum valor de chave primária pode ser nulo;

10 www.acasadoconcurseiro.com.br
Informática – Banco de Dados – Prof. Márcio Hunecke

Integridade de Domínio
Um valor designado para um campo deve estar dentro do domínio previsto para aquele campo.

Integridade de Vazio
Por meio dessa desta restrição de integridade é possível determinar se um campo pode conter
valores nulos. Os campos que compõem a chave primária devem ser diferentes de vazio.

Integridade de Chave
Restrição que determina que os valores de chaves primárias e alternativas devem ser únicos.

Integridade Referencial
É a restrição que define que valores dos campos que aparecem em uma chave estrangeira de-
vem estar presentes na coluna da chave primária da tabela referenciada.
As restrições acima relatadas são garantidas automaticamente por um SGBD relacional e o pro-
gramador não precisa se preocupar em escrevê-las através de programação.
Restrições semânticas geram outras restrições deintegridade, essas sim, que devem ser garan-
tidas pela da codificação.

Formas normais

Diz-se que uma tabela num BD relacional está numa certa forma normal se satisfaz certas con-
dições. O trabalho original de Edgar F. Codd definiu três dessas formas, mas existem hoje ou-
tras formas normais geralmente aceitas. Damos aqui uma curta panorâmica informal das mais
comuns. Cada forma normal listada abaixo representa uma condição mais forte que a precede
na lista. Para a maioria dos efeitos práticos, considera-se que as bases de dados estão normali-
zadas se aderirem à terceira forma normal.
•• Primeira Forma Normal (ou 1FN) requer que todos os valores de colunas em uma tabela se-
jam atômicos (ex., um número é um átomo, enquanto uma lista ou um conjunto não o são).
A normalização para a primeira forma normal elimina grupos repetidos, pondo-os cada um
em uma tabela separada, conectando-os com uma chave primária ou estrangeira.
•• Segunda Forma Normal (ou 2FN) requer que não haja dependência funcional não-trivial de
um atributo que não seja a chave, em parte da chave candidata.
•• Terceira Forma Normal (ou 3FN) requer não haver dependências funcionais não triviais de
atributos que não sejam chave, em qualquer coisa exceto um superconjunto de uma chave
candidata.

www.acasadoconcurseiro.com.br 11

Você também pode gostar