(Parte 1 de 7)

Introdução01
1. Arquivo02
2. Registro02
3. Campo03
4. Chave Primária04
5. Chave Secundária05
6. Chave Candidata06
1. Método De Acesso07
2. Organização Seqüencial09
3. Organização Serial10
4. Organização Indexada1
1. Sistema Geranciador de Banco de Dados - SGBD13
2. Banco de Dados13
3. Sistema em Banco de Dados14
1. Independência de dados15
2. Compartilhamento de dados16
3. Menor redundância16
4. Privacidade de dados16
5. Segurança de dados17
6. Tratamento de concorrência17
7. Integridade de dados18
1. SQL19
2. Autocontidas2
3. Hospedeiras2
4. Visuais23
5. Linguagens para INTERNET23
Conclusão24

CAPÍTULO V - LINGUAGENS DE BD 1

1. Terminologia do Modelo Relacional25
2. Regras de integridade26
a. Integridade Declarativa27
b. Integridade Procedural29
c. Integridade Referencial30
3. Operadores Relacionais32
4. Propriedades Relacionais3
5. Vantagens do Modelo Relacional34
1. Estudo de caso36
2. Generalidades38
3. Operadores de Conjunto39
a. União40
b. Interseção41
c. Diferença42
d. Produto carteziano43
4. Operadores Relacionais4
e. Projeção4
f. Seleção45
g. Junção46
Introdução48
CAPÍTULO VIII - NÍVEIS DE ABSTRAÇÃO
1. Mundo Real50
2. Modelo Descritivo50
3. Modelo Conceitual51
4. Modelo Operacional51
5. Modelo Interno52
Generalidades53
1. MER - Notação e terminologia54
2. Regras para atribuição de nomes à entidades5
3. Atributo56
4. Dicionário de Dados57
5. Relacionamento59
6. Cardinalidade60
7. Nome do relacionamento62
8. Papel63
9. Sentenças64
10. Integridade Referencial65
1. Regras gerais para o MER6
12. Vantagens e desvantagens do MER67
1. Auto-relacionamento68
2. Mais de um relacionamento69
3. Relacionamento Múltiplo70
1. Generalização72
2. Especialização73
3. Agregação74
4. Variação do conceito de Agregação75
1. Anomalias de Atualização76
2. Terminologia7
Dependência Funcional Completa (DFC) ...................78
Dependência Funcional Parcial (DFP) .......................79
Dependência Funcional Transitiva (DFT) ...................80
3. Notação para as estruturas de dados81
4. Esquema de normalização83
5. Relações não Normalizadas84
6. Primeira forma normal (1FN)85
7. Escolha da chave primária86
8. Segunda forma normal (2FN)8
9. Terceira forma normal (3FN)89
Bibliografia91

CAPÍTULO XII - NORMALIZAÇÃO 3

No início da década de 60, foram lançados os primeiros sistemas gerenciadores de banco de dados (SGBD), tendo como principal proposta o aumento na produtividade nas atividades de desenvolvimento e manutenção de sistemas, até então realizadas de forma artezanal em linguagens de programação convencionais de primeira e segunda geração.

Oriundos do ambiente de mainframes, os SGBD tornaram-se mais populares e amigáveis com o advento da microinformática. Cada vez mais as fronteiras entre esses dois mundos estreitam-se e a concorrência pelo domínio do mercado de SGBD, tem levado seus diversos fabricantes a sofisticarem seus produtos. Cada nova versão lançada, incorpora novidades como interfaces gráficas, ferramentas de apoio ao desenvolvimento, utilitários para gerenciamento de BD e facilidades para extração de dados. Essa evolução vem tornando o trabalho de programadores, analistas e usuários menos artezanal, com reflexos na qualidade e produtividade.

A literatura classifica os SGBD como HIERÁRQUICO, REDE e RELACIONAL. Essa classificação representa a evolução desses produtos no curso da história. Atualmente, o mercado é dominado pelos SGBD RELACIONAIS e caminha para a colocação em escala comercial dos SGBD ORIENTADOS A OBJETOS.

Este texto introduz a teoria de BANCO DE DADOS, a partir de conceitos básicos da teoria de arquivos que perpetuaram-se na terminologia de banco de dados. Na sequencia aborda superficialmente os modelos HIERÁRQUICO e REDE (por razões de mercado) e de forma mais aprofundada o MODELO RELACIONAL, o qual designaremos neste texto pela sigla SGBD-R.

Para compreender com maior facilidade os conceitos relativos a BANCO DE DADOS é de suma importância revisar-mos alguns conceitos básicos referentes à teoria e terminologia de arquivos convencionais, haja vista, que os primeiros SGBD foram criados a partir do aperfeiçoamento de sistemas gerenciadores de arquivo, e ainda utilizam muito da base conceitual e da terminologia de arquivos.

1. ARQUIVO

Um arquivo é uma coleção de REGISTROS do mesmo tipo, ou seja, referentes a um mesmo assunto e com o mesmo formato padrão (layout). Constitui o componente do sistema no qual são armazenados os dados, que combinados através dos programas servem de base para a geração da informação desejada pelo usuário, através de relatórios e consultas on-line.

Um sistema de controle de notas, por exemplo, pode armazenar seus dados em diversos arquivos, cada um contendo informações sobre um determinado item do sistema: ALUNO, PROFESSOR, MATÉRIA, NOTA, etc.

Essas informações podem ser combinadas através de programas para gerar, por exemplo, o BOLETIM ESCOLAR, a PAUTA ou uma tela de CONSULTA DE NOTAS.

2. REGISTRO

Um registro é constituído por conjunto de campos valorados (contendo dados. Consiste na unidade de armazenamento e recuperação da informação em um arquivo. Geralmente, os registros de um arquivo possuem um formato padrão (layout), definido pela seqüência, tipo e tamanho dos campos que o compõem. Porém, algumas linguagens de programação permitem a criação de registros com layouts deferentes em um mesmo arquivo, recurso este que raramente é utilizado.

3. CAMPO

É a unidade básica formadora de um registro. Constitui a célula da informação. É a menor porção de um arquivo que pode ser referenciada por um programa.

Cada campo possui NOME, TIPO e TAMANHO. Os tipos de campo mais comuns são:

NUMBER _ Armazena somente números _ Pode conter casas decimais

_ Pode ser utilizado em operações matemáticas

CHAR ou ALFANUMÉRICO _ Pode armazenar letras, números e caracteres especiais

DATE _ Armazena datas fazendo consistência automática MEMO ou LONG _ Armazena textos em formato livre

A figura a seguir sintetiza os conceitos de ARQUIVO, REGISTRO e CAMPO:

DATE
001 José SQS 30823/08/78
REGISTROS 002 Maria QND 1425/09/70
003 Ana SQN 41010/08/85

TIPO e TAM. MATRICULA NUMBER (03) NOME CHAR (30)ENDEREÇO CHAR (50) DT_NASC

4. CHAVE PRIMÁRIA (PRIMARY KEY - PK) 3

A CHAVE PRIMÁRIA (ou simplesmente CHAVE) é o identificador único de um registo em um arquivo. Pode ser constituída de um campo (CHAVE SIMPLES) ou pela combinação de dois ou mais campos (CHAVE COMPOSTA), de tal maneira, que não existam dois registros no arquivo com o mesmo valor de chave primária.

Em regra, todo arquivo deve possuir uma chave primária, que permita a identificação inequívoca do registro, especialmente, para dar maior consistência aos processos de inclusão, alteração e exclusão de dados.

Para que não ocorram duplicatas nos valores da chave, os campos que a compõem são de PREENCHIMENTO OBRIGATÓRIO (NOT NULL).

possuam ESTABILIDADE no valor armazenadoA escolha do NÚMERO
considerar que o cliente pode ter mais de um telefone

Na escolha da chave primária de um arquivo deve-se buscar campos que DO TELEFONE como chave de um cadastro de clientes, por exemplo, seria inadequada, por que esse valor pode mudar com freqüência. Sem

Deve-se também evitar a escolha de campos que possam causar AMBIGÜIDADE em relação aos valores nele contidos. Nesse sentido, seria inadequado a escolha do campo NOME para chave de um cadastro de clientes, haja vista, que um mesmo nome pode ser escrito de várias formas. Por exemplo: LUÍS, LUIZ, LOUIS, LOYS, LUYS.

Se desejássemos cobrar uma fatura de um cliente com um nome como esse, a probabilidade de erramos o cliente seria grande. Além disso, a extensão do campo (30 ou mais caracteres) é um outro aspecto que aumenta a possibilidade de erros.

_ Todo arquivo deve possuir uma chave primária. _ VALOR ÚNICO para cada registro.

_ SIMPLES ou COMPOSTA.

_ Campos de PREENCHIMENTO OBRIGATÓRIO.

_ Valor ESTÁVEL.

_ Não AMBÍGUO.

_ PEQUENA EXTENSÃO (menor possível).

_ De preferência CAMPOS NUMÉRICOS

5. CHAVE SECUNDÁRIA

A chave secundária pode ser formada por um campo ou pela combinação de campos (SIMPLES / COMPOSTA). Ë utilizada como parâmetro (filtro) para seleção de registros no arquivo em consultas, emissão de relatórios ou processos de atualização simultânea de um grupo de registros.

Por exemplo, para aumentarmos o valor do salário dos analistas em 10%, poderíamos utilizar o campo FUNÇÃO do arquivo CADASTRO DE FUNCIONÁRIOS como parâmetro (chave secundária) no processo de seleção dos registros a serem alterados.

Em síntese, a chave secundária é o campo ou combinação de campos do arquivo que permite a recuperação de mais de um registro no arquivo. Portanto, não possui a característica de unicidade proposta para a chave primária.

A figura a seguir ilustra os conceitos de CHAVE PRIMÁRIA e SECUNDÁRIA ARQUIVO ALUNO

PK
001 José SQS 30823/08/78
003 Maria QND 1425/09/70
002 Ana SQN 41010/08/85

Acesso via CHAVE SECUNDÁRIA (NOME) no arquivo ALUNO: PROGRAMA X

INÍCIO....
SE NOME = “JOSÉ”
ENTÃO IMPRIMIR
FIM

6. CHAVE CANDIDATA

Pode ocorrer uma situação em que mais de um campo satisfaça a condição de chave primária, constituindo duas ou mais CHAVES CANDIDATAS. Neste caso, o analista deverá eleger somente uma delas como CHAVE PRIMÁRIA, as demais permanecerão na condição de CANDIDATAS, indicando que tratam-se de campos de preenchimento obrigatório e com valores únicos para cada registro, o que será garantido através de mecanismos de integridade de coluna, que veremos no capítulo relativo a banco de dados.

A figura a seguir mostra um exemplo de arquivo com CHAVE CANDIDATA

CHAVE CANDIDATA
CHAVE PRIMÁRIA
001 José SQS 30872993246500
003 Maria QND 1412354789065
002 Ana SQN 41009876587659

O tema organização de arquivos refere-se a forma como os registros são armazenados em um arquivo baseado em computador. Confunde-se com MÉTODO DE ACESSO, que consiste na forma como esses podem ser recuperados. A organização do arquivo determina os métodos de acesso que podem ser utilizados na recuperação dos registros, mas tratam-se de coisas distintas.

Apesar de este ser um assunto muito abrangente e com muitas variantes em termos de abordagem, trataremos de apenas três tipos de organização (SEQÜENCIAL, SERIAL E INDEXADA) e seus respectivos métodos de acesso. Essa escolha baseia-se na necessidade de discutirmos alguns conceitos essenciais para o estudo do modelo Relacional de banco de dados, que constitui o objeto principal desse texto.

1. MÉTODOS DE ACESSO

Para recuperarmos um registro em um arquivo, podemos utilizar acesso SEQÜENCIAL ou DIRETO.

O método SEQÜENCIAL de acesso é o mais tradicional e consiste em efetuar a leitura dos registros, um após o outro, comparando o ARGUMENTO DE PESQUISA, com o valor do campo CHAVE (primária ou secundária) no registro corrente, até encontrar os registros desejados ou o final do arquivo.

(Parte 1 de 7)

Comentários