Texto

Propaganda
Tecnologias e Linguagens para Banco de Dados I
Respostas:
1. O que é um Sistema Gerenciador de Banco de Dados ?
É um conjunto de softwares que tem por função armazenar grande volume de
dados, mantendo as informações coesas, controlando o acesso as mesmas,
disponibilizando muitas ferramentas de apoio ao desenvolvimento de aplicações
e o monitoramento constante de todas as tarefas.
2. O que é um dado ?
É a representação de uma informação, registrada, ou armazenada.
3. O que é um campo ?
É a menor porção ou unidade destinada ao armazenamento de valores em um
arquivo ou tabela. Cada campo pode conter apenas um tipo de dado finito.
Prof. João Ricardo Andrêo
31/05/2017 14:52
1
Tecnologias e Linguagens para Banco de Dados I
4. O que é um registro ?
É um conjunto de campos valorizados de uma tabela. É a unidade básica para
armazenamento e recuperação de dados, que identifica a um único item de
informação de uma tabela.
5. O que é uma tabela ?
É um conjunto ordenado de registros (linhas) que possue o mesmo número de
colunas. Um banco de dados pode ser formado por uma ou mais tabelas.
6. Quanto a classificação de banco de dados, baseada no modelo, cite 3 tipos.
São os modelos: relacional, hierárquico, rede e objeto.
Prof. João Ricardo Andrêo
31/05/2017 14:52
2
Tecnologias e Linguagens para Banco de Dados I
Atividades:
Criar as seguintes tabelas:
FORNECEDOR (Nome Tabela)
Nome (Campo) Tipo
Tamanho
CODIGO
NUMERO
INTEIRO
NOME
TEXTO
45
CONTATO
TEXTO
45
ENDERECO
TEXTO
40
CIDADE
TEXTO
20
ESTADO
TEXTO
2
CEP
TEXTO
9
DDDFONE
TEXTO
4
NRFONE
TEXTO
8
DDDFAX
TEXTO
4
NRFAX
TEXTO
8
Prof. João Ricardo Andrêo
31/05/2017 14:52
3
Tecnologias e Linguagens para Banco de Dados I
VENDEDOR (Nome da Tabela)
Nome (Campo)
Tipo
Tamanho
RG
NUMERO
INTEIRO LONGO
NOME
TEXTO
45
ENDERECO
TEXTO
40
CIDADE
TEXTO
20
ESTADO
TEXTO
2
CEP
TEXTO
9
DDDFONE
TEXTO
4
NRFONE
TEXTO
8
DATA_ADM
DATA/HORA
SALBRUTO
NUMERO
MOEDA / NUMERIC(10,2)
TXCOMISSAO
NUMERO
DUPLO/FLOAT
Prof. João Ricardo Andrêo
31/05/2017 14:52
4
Tecnologias e Linguagens para Banco de Dados I
Tipos de Dados:
Texto – É o tipo padrão do Microsoft Access. Este tipo é utilizado para armazenar
informações alfanuméricas, isto é, letras, números ou caracteres especiais
(símbolos como : ; / ? @ $ ! > <). Estes campos podem ter no máximo 255
caracteres.
Número – É utilizado para armazenar informações de origem numérica, além dos
sinais: + (positivo) e – (negativo). O tamanho de um campo numérico está
subdividido em: Byte, Inteiro (Integer), Inteiro Longo (Long), Simples (Single) ou
Duplo (Double).
Data/Hora – É utilizado para armazenar dados do tipo data (01/02/2010) e hora
(10:05:03). Internamente este campo é definido como tipo numérico de tamanho
duplo.
Prof. João Ricardo Andrêo
31/05/2017 14:52
5
Tecnologias e Linguagens para Banco de Dados I
Tipos de Dados: (Continuação)
Moeda – Este tipo é utilizado para armazenar valores numéricos que represente
importância monetária – dinheiro.
Sim/Não – Este tipo, também conhecido como lógico ou booleano, é utilizado para
armazenar uma informação lógica, isto é, situação verdadeira ou falsa, positiva ou
negativa, ativado ou desativado, sim ou não.
Memorando – É utilizado para armazenar informações textuais que ultrapasse 255
caracteres, atingindo o máximo de 64000.
Autonumeração – Este tipo é equivalente ao numérico de tamanho Inteiro Longo. Este
campo é controlado pelo Access, iniciando em 1, sendo incrementado a cada novo
registro inserido na tabela. Obs.: Qdo ocorre a exclusão de um registro, por exemplo
o número 2, a sequência não é atualizada, portanto ficará: 1, 3, 4, 5 e assim por
diante.
Prof. João Ricardo Andrêo
31/05/2017 14:52
6
Tecnologias e Linguagens para Banco de Dados I
Tipos de Dados: (Continuação)
Objeto OLE –
Este é utilizado para armazenar informações criadas por outros
aplicativos, como planilhas, textos, sons, imagens etc.
Prof. João Ricardo Andrêo
31/05/2017 14:52
7
Tecnologias e Linguagens para Banco de Dados I
Índices e Chaves:
Índices – A funcionalidade de um índice em um banco de dados, é semelhante ao
índice que encontramos em livros, revistas ou outros tipos de registros de dados em
papel. Os índices possibilitam o acesso rápido aos dados, isto é, auxiliam no
processo de busca com extrema rapidez.
Um índice pode ser simples (formado por um único campo da tabela) ou composto
(formado por vários campos da tabela). Estes campos são denominados CAMPOS
DE INDEXAÇÃO.
Os índices não contem dados, apenas o valor do campo de indexação e o
“ponteiro” que faz a referência para o registro dentro da tabela. Estes índices são
atualizados a cada operação de inserção ou exclusão.
Em alguns sistemas, os índices são gravados separadamente do arquivo de dados.
Prof. João Ricardo Andrêo
31/05/2017 14:52
8
Tecnologias e Linguagens para Banco de Dados I
Índices e Chaves: (Continuação)
Esta característica podia resultar em índices desatualizados em relação aos
arquivos de dados, pois era necessário especificar o arquivo de índice utilizado
dentro da aplicação.
Alguns sistemas como Access, Interbase, SQL Server e outros, armazenam os
índices dentro de um único arquivo e não existe a necessidade de fazer referência
ao índice, pois o próprio gerenciador se encarrega desta tarefa.
Os índices podem ser definidos como únicos, ou seja, não permitem a duplicidade
de dados para o campo determinado. Como exemplo podemos citar uma tabela de
cadastro de fornecedores, que possui o código do fornecedor como chave primária,
podendo definir o campo CNPJ como índice único, não permitindo assim a
duplicidade baseado nesta informação, ou seja, não será possível cadastrar duas
vezes o mesmo fornecedor devido esta informação.
Prof. João Ricardo Andrêo
31/05/2017 14:52
9
Tecnologias e Linguagens para Banco de Dados I
Chave Primária:
É um campo da tabela que permite identificar de forma única o registro. Tem
também como função aplicar a ordenação física dos dados. Seu funcionamento é
similar ao de um índice.
Como ocorre nos índices, a chave primária pode ser formada por um ou mais
campos – Chave simples ou Chave composta.
Ela é responsável em evitar a duplicidade de registros, ou seja, não permite que dois
ou mais registros contenham o mesmo valor nos campos que compõem a chave.
A chave permite que uma busca ou pesquisa seja realizada de forma mais rápida
pois os dados estão fisicamente ordenados por ela.
Podemos citar dois critérios importantes para escolher os campos, ou o campo, que
irá definir a chave primária:
Prof. João Ricardo Andrêo
31/05/2017 14:53
10
Tecnologias e Linguagens para Banco de Dados I
Chave Primária: (continuação)
- Escolher um campo que não seja muito grande, ou seja, escolher o menor dado
único possível, pois desta forma o processo de atualização dos mesmos será mais
rápido.
- O campo escolhido, deve ser um que não sofra constantes alterações, isto é, que
seja um campo estável, pois o mesmo poderá estar relacionado com outras tabelas,
o que acarreta uma degradação de performance quando ocorre uma atualização.
Os campos de chave primária, devem ser de preenchimento obrigatório.
Chave Candidata:
São campos que poderiam ser utilizados como chave primária, mas não são, por
exemplo, no cadastro de cliente, temos o campo código do cliente que foi definido
como chave primária e com valor automático, gerado pelo próprio sistema.
Prof. João Ricardo Andrêo
31/05/2017 14:53
11
Tecnologias e Linguagens para Banco de Dados I
Chave Candidata: (continuação)
Neste caso, o cadastro de cliente possui o campo RG, que também poderia ser
utilizado como chave primária, por seu valor ser único e de preenchimento
obrigatório, porém é um campo demasiadamente grande e no Brasil uma pessoa
pode ter mais de um RG em estados diferentes, inviabilizando o valor único do
campo.
Chave Estrangeira:
As chaves estrangeiras podem ser compostas por um ou mais campos das tabelas,
que tem a função de relacionar os registros de uma tabela com os de outra tabela
através da chave primária.
Segue o exemplo:
Prof. João Ricardo Andrêo
31/05/2017 14:53
12
Tecnologias e Linguagens para Banco de Dados I
Chave Estrangeira: (continuação)
A tabela CATEGORIAS (referente a cadastro de categoria de produtos) possui um
campo de código (CODIGOCATEGORIA) que é a chave primária desta tabela.
A tabela PRODUTOS possui um campo de código da categoria, e o conteúdo do
mesmo deve pertencer a tabela de CATEGORIAS.
Pode-se notar que o campo CODIGOCATEGORIA existe em ambas as tabelas e na
tabela de PRODUTOS não é chave primária, pois é utilizado para criar o
relacionamento com a tabela de CATEGORIAS, na qual, é chave primária, então
este campo é denominado CHAVE ESTRANGEIRA.
Podemos verificar na imagem que segue.
Prof. João Ricardo Andrêo
31/05/2017 14:53
13
Tecnologias e Linguagens para Banco de Dados I
Prof. João Ricardo Andrêo
31/05/2017 14:53
14
Tecnologias e Linguagens para Banco de Dados I
Domínio:
Podemos entender como domínio, um tipo de definição de dado e especificação de
valores que podem ser aceitos pelo campo definido. Nem todos os SGBD suportam
a criação de domínio. No geral, todos os SGBD que tem suporte ao SQL, tem
suporte ao domínio.
A maior vantagem deste recurso é a padronização dos campos existentes em várias
tabelas do banco de dados.
Por exemplo, se os campos ENDERECO, BAIRRO, CIDADE, ESTADO e CEP serão
repetidos em várias tabelas: FUNCIONARIOS, CLIENTES, FORNECEDORES.
CAMPO
TIPO DE DADO
TAMANHO
ENDERECO
TEXTO
50
BAIRRO
TEXTO
35
CIDADE
TEXTO
35
ESTADO
TEXTO
2
CEP
TEXTO
9
Prof. João Ricardo Andrêo
31/05/2017 14:53
15
Tecnologias e Linguagens para Banco de Dados I
Domínio: (continuação)
Provavelmente definiremos um ou mais campos com tamanhos ou tipos diferentes.
Criando o domínio, esta probabilidade pode ser evitada.
Vamos usar uma linguagem imaginária para a criação de domínios:
DEFINIR DOMINIO DM_ENDERECO COM TIPO TEXTO E TAMANHO 50
DEFINIR DOMINIO DM_BAIRRO COM TIPO TEXTO E TAMANHO 35
DEFINIR DOMINIO DM_CIDADE COM TIPO TEXTO E TAMANHO 35
DEFINIR DOMINIO DM_ESTADO COM TIPO TEXTO E TAMANHO 2
DEFINIR DOMINIO DM_CEP COM TIPO TEXTO E TAMANHO 9
Prof. João Ricardo Andrêo
31/05/2017 14:53
16
Tecnologias e Linguagens para Banco de Dados I
Domínio: (continuação)
Na criação da tabela, faz-se então referência a esses domínios.
Utilizando a mesma linguagem imaginária, teríamos o seguinte:
CRIAR TABELA FUNCIONARIOS COM FORMATO
( CAMPO ENDERECO COM ATRIBUTO DM_ENDERECO,
CAMPO BAIRRO COM ATRIBUTO DM_BAIRRO,
CAMPO CIDADE COM ATRIBUTO DM_CIDADE,
CAMPO ESTADO COM ATRIBUTO DM_ESTADO,
CAMPO CEP COM ATRIBUTO DM_CEP)
Este mesmo método seria empregado na criação das tabelas CLIENTES e
FORNECEDORES.
Prof. João Ricardo Andrêo
31/05/2017 14:53
17
Download