monetário -única -comportamento

Propaganda
Tecnologias e Linguagens para Banco de Dados I
Atividades:
1 – Descreva os tipos de dados existentes no Microsoft ACCESS.
2 – Descreva o que é INDICE e como é o seu funcionamento.
3 – O que é chave-primária e quais os critérios para escolher uma chave ?
4 – O que é uma chave candidata ?
5 – O que é chave estrangeira ?
6 – O que é um DOMÍNIO e qual a sua função ?
Prof. João Ricardo Andrêo
31/05/2017 14:53
1
Tecnologias e Linguagens para Banco de Dados I
Integridades
A maior preocupação de um profissional responsável por administrar um SGBD, é
garantir a integridade dos dados armazenados. Esta fato se deve a ocorrências
catastróficas no caso de gerar informações imprecisas ou totalmente erradas.
Por exemplo: em uma aplicação, temos em nosso banco de dados uma tabela com
dados do contas a receber, com alguns registros de pagamento em aberto de um
determinado cliente. A ligação entre essas informações (CLIENTE – CONTAS A
PAGAR) é realizada pelo campo CODIGOCLIENTE,
portanto, esse campo não
pode sofrer nenhuma forma de alteração ou eliminação. Supondo que em algum
momento esse campo (CODIGOCLIENTE) sofreu uma alteração acidental, por
algum usuário que possui acesso ao SGBD. Neste momento o vínculo entre os
campos do CLIENTE e do CONTAS A PAGAR foram quebrados, isto é, existe no
CONTAS A PAGAR pagamentos em aberto, aos quais não tem CLIENTE

Prof. João Ricardo Andrêo
31/05/2017 14:53
2
Tecnologias e Linguagens para Banco de Dados I
Integridades (continuação)
correspondente.
Isso causaria um enorme problema.
A integridade, garante ao desenvolvedor menor trabalho, pois o aplicativo não
necessita de rotinas para checar a existência e a veracidade dos dados. Além disso
a maioria dos SGBDs de hoje possui recursos para gerenciar o acesso aos dados
fora das aplicações (USUÁRIOS do SGBD).
Integridade de ENTIDADES
A integridade da entidade (tabela) é definida pela presença da CHAVE PRIMÁRIA e
pelo preenchimento obrigatório da mesma. Essa exigência deve-se ao fato de que o
campo ou campos que compõem a chave primária, são atributos que identificam o
registro como único.

Prof. João Ricardo Andrêo
31/05/2017 14:53
3
Tecnologias e Linguagens para Banco de Dados I
Integridade de ENTIDADES (continuação)
Devemos ressaltar que o valor NULO é diferente de zero (0), para campos
numéricos, e espaço em branco, para campos texto, isto é, o valor nulo é a ausência
de valor(es) no campo.
Para evitar a presença de valores nulos, o ACCESS disponibiliza em sua folha de
PROPRIEDADES e o campo REQUIRIDO, que deve estar determinado como SIM.
No caso de outros SGBDs, padrão SQL, adiciona-se a cláusula NOT NULL no
momento da criação do campo da tabela, para forçar assim o preenchimento de
algum dado válido no mesmo.
Prof. João Ricardo Andrêo
31/05/2017 14:53
4
Tecnologias e Linguagens para Banco de Dados I
Integridade Referencial
A integridade referencial é estabelecida no momento do relacionamento entre as
tabelas, isto é, quando o campo CHAVE PRIMÁRIA de uma tabela tem um campo
correspondente em outra tabela, tornando-se esse uma CHAVE ESTRANGEIRA.
Este recurso estabelece algumas restrições ou bloqueios de algumas operações nas
tabelas, como o processo de exclusão ou alteração de informações ou dados.
O que a integridade referencial faz é proibir a inconsistência, impedindo a quebrado
do relacionamento entre as tabelas e seus respectivos campos (CHAVE PRIMÁRIA
e a CHAVE ESTRANGEIRA).
Podemos recordar o exemplo do relacionamento entre a tabela PRODUTO e a
tabela CATEGORIA, onde na tabela PRODUTO temos o registro de CODIGO
“123456”, cuja CATEGORIA é “000001”. Ao excluir na tabela CATEGORIA o registro
de CODIGO “000001”, os registros existentes na tabela PRODUTO, que possuem 
Prof. João Ricardo Andrêo
31/05/2017 14:53
5
Tecnologias e Linguagens para Banco de Dados I
Integridade Referencial (continuação)
que possuem o campo CATEGORIA “000001” , ou seja, os produtos que possuem
essa categoria, ficarão “órfãos”,
isto é, não terão um CODIGO de categoria
correspondente na tabela de CATEGORIA.
Isso livra o programador de desenvolver uma codificação que realize essas
verificações, além de proporcionar outros recursos como a proibição de alteração e
exclusão ou executar uma exclusão em cascata, isto é, quando ocorrer a exclusão
de um registro na tabela CATEGORIA, todos os produtos relacionados a ela, que
tem no campo CODIGOCATEGORIA o mesmo valor daquele que foi excluído, serão
eliminados .
Prof. João Ricardo Andrêo
31/05/2017 14:53
6
Tecnologias e Linguagens para Banco de Dados I
Integridade de Domínio
A integridade de Domínio, estabelece regras e restrições na definição do domínio,
isto é, quando esse é criado.
Isso ajuda a ganhar tempo no momento de construir os campos das tabelas, pois os
mesmos já estarão pré-formatados, assim, os campos criados utilizando o recurso
de domínio, herdam toda a integridade e restrições definidas anteriormente.
Como exemplo, criaremos um domínio com linguagem fictícia, estabelecendo uma
restrição.
DEFINIR DOMINIO “DM_SALARIO” COM TIPO DECIMAL E VALOR MAIOR QUE 0
CRIAR TABELA COMISSAO COM FORMATO
( CAMPO SALARIO COM ATRIBUTO DM_SALARIO,
CAMPO TAXA COM ATRIBUTO DUPLO)
Prof. João Ricardo Andrêo
31/05/2017 14:53
7
Tecnologias e Linguagens para Banco de Dados I
Integridade de Campos
A integridade de Campo, é estabelecida no momento de criação da tabela (definição
da estrutura) .
A restrição ou validação do conteúdo armazenado no campo pode ser estabelecida
campo a campo, não apenas no domínio.
Além das restrições e validações, podemos estabelecer outras integridades, como
intervalo de valores e formatação de campos, isto é, pode-se estabelecer por
exemplo que um campo que armazene o CNPJ de uma empresa tenha o seguinte
formato: “XX.XXX.XXX/XXXX-XX” , utilizando esse recurso, mais uma vez o
desenvolvedor não tem a necessidade de preocupar-se com esse detalhe.
Pode-se ainda, definir regras de integridade em rotinas criadas pelo desenvolvedor,
nos recursos de STORED PROCEDURE e TRIGGERS, nos SGBDs do padrão SQL.
Prof. João Ricardo Andrêo
31/05/2017 14:53
8
Tecnologias e Linguagens para Banco de Dados I
Atividade Prática:
1 - Criar a base de dados: AULA3_TLBD1_INFO
2 – Nesta base criaremos as seguintes tabelas, com chaves primárias, índices e
relacionamentos:
Tabela: UF
P.K.
Nome Campo
Tipo
Tamanho
Requerido Comprimento ZERO
SIGLAUF
TEXTO
2
SIM
NÃO
NOMEUF
TEXTO
35
SIM
NÃO
Tabela: MUNICIPIO
P.K.
F.K.
Nome Campo
Tipo
Tamanho
Requerido Comprimento ZERO
CODIGOCITY
TEXTO
9
SIM
NÃO
NOMECITY
TEXTO
45
SIM
NÃO
ESTADOCITY
TEXTO
2
SIM
NÃO
Prof. João Ricardo Andrêo
31/05/2017 14:53
9
Tecnologias e Linguagens para Banco de Dados I
Tabela: FORNECEDOR
P.K.
Nome Campo
Tipo
Tamanho
Requerido Comprimento ZERO
CODFOR
NUMERO
Inteiro Longo
SIM
NÃO
NOMEFOR
TEXTO
45
SIM
NÃO
CONTATO
TEXTO
45
SIM
NÃO
ENDERECO
TEXTO
40
SIM
NÃO
CIDADE
TEXTO
06
SIM
NÃO
CEP
TEXTO
09
SIM
NÃO
DDD
TEXTO
04
NÃO
SIM
FONE
TEXTO
8
NÃO
SIM
FAX
TEXTO
8
NÃO
SIM
CELULAR
TEXTO
8
NÃO
SIM
Prof. João Ricardo Andrêo
31/05/2017 14:53
10
Tecnologias e Linguagens para Banco de Dados I
Tabela: VENDEDOR
P.K.
Nome Campo
Tipo
Tamanho
Requerido
Comprimento ZERO
CODIGO
NUMERO
Inteiro Longo
SIM
NÃO
RG
TEXTO
16
SIM
NÃO
NOME
TEXTO
45
SIM
NÃO
ENDERECO
TEXTO
40
SIM
NÃO
CIDADE
TEXTO
06
SIM
NÃO
CEP
TEXTO
09
SIM
NÃO
DDD
TEXTO
04
NÃO
SIM
FONE
TEXTO
8
NÃO
SIM
FAX
TEXTO
8
NÃO
SIM
CELULAR
TEXTO
8
NÃO
SIM
SALBRUTO
NUMERO
Valor Monetário
(com duas
decimais)
SIM
NÃO
TXCOMISSAO
NUMERO
Simples
SIM
NÃO
Prof. João Ricardo Andrêo
31/05/2017 14:53
11
Tecnologias e Linguagens para Banco de Dados I
Tabela: CATEGORIA
P.K.
Nome Campo
Tipo
Tamanho
Requerido
Comprimento ZERO
CODCATEGORIA
NUMERO
Byte
SIM
NÃO
DESCRICAO
TEXTO
40
SIM
NÃO
Tabela: PRODUTO
Nome Campo
Tipo
Tamanho
Requerido
Comprimento ZERO
P.K.
CODPROD
TEXTO
8
SIM
NÃO
I. D.
TITULO
TEXTO
50
SIM
NÃO
I. D.
AUTOR
TEXTO
50
SIM
NÃO
CODFOR
NUMERO
Inteiro Longo
SIM
NÃO
DATAPUBL
DATA
SIM
NÃO
PRECO
NUMERO
Valor Monetário
(com duas
decimais)
SIM
NÃO
F.K.
CATEGORIA
NUMERO
Byte
SIM
NÃO
I. D.
ASSUNTO
TEXTO
50
SIM
NÃO
Prof. João Ricardo Andrêo
31/05/2017 14:53
12
Tecnologias e Linguagens para Banco de Dados I
Tabela: VENDA
P.K.
Nome Campo
Tipo
Tamanho
Requerido
Comprimento ZERO
NRVENDA
NUMERO
Inteiro Longo
SIM
NÃO
RGCLI
TEXTO
16
SIM
NÃO
RGVEND
TEXTO
16
SIM
NÃO
DTVENDA
DATA
SIM
NÃO
DESCTO
NUMERO
Valor Monetário
(com duas
decimais)
NÃO
SIM
Nome Campo
Tipo
Tamanho
Requerido
Comprimento ZERO
NRVENDA
NUMERO
Inteiro Longo
SIM
NÃO
CODPROD
TEXTO
08
SIM
NÃO
QTD
NUMERO
Inteiro
SIM
NÃO
Tabela: VENDA
F.K.
Prof. João Ricardo Andrêo
31/05/2017 14:53
13
Download