Pequeno Histórico

Propaganda
Parte 10 - B ancos de Dados
INTRODUÇÃO
AOS
BANCOS
DE
DADOS
Quando você liga para uma pizzaria, realizando um pedido em domicílio, a primeira pergunta
que lhe fazem é: “qual o seu telefone?”, que é então, consultado em um computador para que todos
os seus dados sejam mostrados na tela e seja acelerado o processo de atendimento telefônico.
Essa busca de informações através do seu telefone é feita em um arquivo que contém todos
os dados referentes a você e aos outros clientes do estabelecimento. Este arquivo é chamado Banco
de Dados.
Banco de Dados é, na verdade, uma forma de armazenar informações estruturadamente,
utilizando-se de campos para melhor dividir e encontrar esses dados. No conceito de Banco de
Dados estão inseridas as estruturas que permitem o armazenamento e os processos que localizam e
manipulam os dados. Verifique o exemplo abaixo:
Nome
Endereço
Telefone
Jorge Almeida
Rua dos Pinhais, 37
3241-4242
Marília Azevedo
Rua Demócrito de Souza
Filho, 234
3221-2211
Antonio Carvalho
Av. Padre Ibiapina, 143
3251-0423
Heitor Carneiro Leão
Rua Rio Tejipió, 157
3446-6565
O exemplo anterior mostra uma tabela, com 3 colunas e 5 linhas (das quais, 1 é a de título,
portanto restam 4 linhas de dados). Esse é um pequeno modelo de um banco de dados, Nome,
Endereço e Telefone são Campos e as linhas de dados são chamadas de Registros.
COMPONENTES BÁSICOS DE UM BANCO DE DADOS
Tabela: Estrutura bidimensional formada por linhas e colunas, para armazenar os dados.
Atualmente, um Banco de Dados é formado por várias tabelas.
Campo: Divisão das tabelas, cada campo permite armazenar um tipo específico de informação, por
exemplo, o campo Telefone armazena, para qualquer que seja o cliente, a informação do telefone
dele. Normalmente, os campos são apresentados como as colunas.
Registro: É o nome dado a uma informação completa da tabela. Por exemplo, Jorge Almeida, Rua
dos Pinhais, 37 e 241-4242 formam um Registro. Cada cliente de uma pizzaria ocupa uma linha da
tabela, portanto, cada cliente é um registro.
TIPOS DE DADOS
Um campo é uma divisão da tabela, portanto, um local para recebimento de um certo tipo de
dado individual. Um campo aceita apenas um tipo de dado definido em sua estrutura, que pode ser,
por exemplo:

Número: armazena apenas valores numéricos, é usado para informações que possam
passar por operações aritméticas;

Texto: o campo aceita caracteres alfanuméricos, é necessário definir a quantidade de
caracteres que o campo vai aceitar;
Esses são os tipos de dados mais comuns em qualquer Banco de Dados, quando estudarmos
isoladamente cada banco, veremos como as regras mudam de um para o outro.
TIPOS DE BANCOS
DE
DADOS
Há, e houve, vários tipos de bancos de dados diferentes, mas atualmente os bancos de dados
mais usados podem ser classificados em:
Banco de Dados Não-Relacional (ou Banco de Dados de Arquivo): Todos os dados estão
armazenados em uma única tabela que está gravada em um único arquivo no disco do computador.
Bando de Dados Relacional: Estruturados com várias tabelas cujos campos exercem uma relação
com campos de outras tabelas. Atualmente é o tipo de Banco de Dados mais usado. Normalmente
todos os componentes desse tipo de BD são armazenados em um único arquivo.
Banco de Dados Orientado a Objeto: Utilizam a idéia de Orientação a Objetos (Objetos,
propriedades, métodos) para armazenar dados. A Orientação a Objeto é uma “filosofia” aceita na
maioria das linguagens de programação atualmente.
Banco de Dados Distribuído: usa uma rede de computadores para armazenar dois ou mais
arquivos relacionando-os para manter o sincronismo entre os dados dos diversos arquivos.
SGBD – SISTEMA GERENCIADOR
DE
BANCOS
DE
DADOS
São aplicativos (programas) que permitem criar, alterar, e excluir componentes da estrutura
dos Bancos de Dados, bem como inserir, alterar e excluir dados nestes.
Os SGBDs mais utilizados hoje em dia são o Access (fabricado pela Microsoft), que é muito
utilizado para bancos de dados pessoais e menos robustos, SQL Server e Oracle, que são
utilizados em projetos mais volumosos, em bancos de dados corporativos (de grandes empresas).
Os bancos de dados desses programas são conhecidos como Bancos de Dados
Relacionais, pois são formados por várias tabelas que se relacionam entre si. Portanto, podemos
chamá-los de SGBDR (Sistemas Gerenciadores de Bancos de Dados Relacionais).
BANCOS
DE
DADOS RELACIONAIS
São, como já foi dito, bancos de dados formados por várias tabelas que estão relacionadas
entre si por alguns campos comuns.
Veja no exemplo a seguir, o banco de dados de uma clínica veterinária será o nosso exemplo.
O que se deve guardar em um banco de dados de uma clínica veterinária? Dados dos clientes, dados
dos animais, dados dos medicamentos, dados das consultas realizadas, dados sobre os fornecedores
de medicamentos, entre outros.
Figura 10.1 – Tabela Clientes
Tudo certo até aqui? Já temos armazenados os dados dos clientes, como endereço, telefone,
nome e um indicador importante apenas para o nosso banco de dados, o código (armazenado no
campo Cod). A tabela acima foi construída com 5 campos apenas, mas podem ser usados mais, se o
projetista do Banco de Dados assim quiser. Mas vamos ter que criar uma tabela para armazenar
também os dados dos animais.
Figura 10.2 – Tabela Animais
Há necessidade de se criar tabelas para as consultas realizadas na clínica (registro de tudo o
que acontece):
Figura 10.3 – Tabela Consultas
Em cada uma dessas três tabelas foi definido um campo para ser o indexador da tabela, esse
campo é chamado Chave Primária. No caso das nossas tabelas, foi escolhido, como era de se
esperar, o campo referente ao código de cada tabela.
A Chave primária é um campo de uma tabela que recebe uma “patente” especial. A
informação contida neste campo não pode se repetir em dois registros diferentes nem pode ter valor
Nulo (vazio). Pode haver mais de um campo classificado como chave primária na mesma tabela.
Pronto, já temos conhecimento da existência de três tabelas no nosso Banco de Dados, mas
o que faz o Banco de Dados Relacional ser tão melhor que as tabelas separadas? (o que temos até
agora é isso: apenas três tabelas separadas).
RELACIONAMENTOS
São as ligações entre campos de tabelas diferentes em um BD Relacional. Esses
relacionamentos são usados para evitar a redundância de dados (repetição).
Note que na tabela Animais (fig. 9.2) não há o nome do dono do animal, mas no campo
Dono há apenas um número, já sabem o que este significa? Isso mesmo! É o código do cliente, que
está armazenado na tabela Clientes. Escrevendo o código do cliente, não há necessidade de
armazenar novamente o nome dele, nem nenhum dos seus outros dados (como endereço, telefone,
etc.).
OK, foi descrita uma relação do seguinte tipo: “Um único cliente cadastrado na clínica
pode ser dono de vários animais cadastrados”. Isso constitui um relacionamento Um-paramuitos.
Figura 10.4 – Relacionamento Clientes x Animais
(um-para-muitos)
Esses são os tipos de relacionamentos entre campos de BDs Relacionais. Vamos analisar
esses relacionamentos usando duas tabelas fictícias A e B:

Um-para-muitos: É a relação entre a chave primária de uma tabela (A) e um campo
comum em outra tabela (B), ou seja, um registro na tabela A pode ter muitos registros
coincidentes na tabela B, mas um registro na tabela B tem só um registro coincidente na tabela
A. Este é o tipo mais comum de relacionamento que existe.

Um-para-um: Cada registro na tabela A pode ter somente um registro coincidente na
tabela B, e cada registro na tabela B pode ter somente um registro coincidente na tabela A. Esse
tipo de relacionamento não é muito comum, visto que todos os campos das duas tabelas em
questão poderiam pertencer a somente uma tabela. Um relacionamento um-para-um é criado
quando ambos os campos relacionados são chaves primárias ou têm índices exclusivos (que
significa: Não podem se repetir).

Muitos-para-muitos: um registro na tabela A pode ter muitos registros coincidentes
na tabela B, e um registro na tabela B pode ter muitos registros coincidentes na tabela A. Esse
tipo de relacionamento só é possível definindo-se uma terceira tabela (denominada tabela de
união).
Sim, mas o que é uma chave estrangeira? É o nome dado ao campo da tabela B com quem
a chave primária da tabela A se relaciona. No nosso exemplo, Cod é a chave primária da tabela
Clientes e Dono é uma chave estrangeira na tabela Animais.
Veja exemplos dos outros tipos de relacionamentos:
Figura 10.5 – Relacionamento um-para-um
Na figura acima, há uma tabela chamada Financeiro que armazena os dados financeiros dos
clientes. Cada cliente possui um único código na tabela Clientes e também um único código na
tabela Financeiro.
É, eu sei o que você está pensando. Todos os dados existentes na tabela Financeiro
poderiam estar na tabela Clientes, bastando, para isso, que se colocassem os campos na referida
tabela. É como está explicado no relacionamento um-para-um. Normalmente ele é feito para separar
grandes quantidades de campos em tabelas diferentes para agilizar a pesquisa de dados no banco.
Figura 10.6 – Relacionamento muitos-para-muitos
Note que há um relacionamento um-para-muitos entre o campo CodMed (chave primária da
tabela Medicamentos) e Medicamento (na tabela Consultas). Também há um relacionamento
um-para-muitos entre o campo CodigoA (chave primária da tabela Animais) e o campo CodigoA
(na tabela Consultas).
Isso constitui um relacionamento muitos-para-muitos entre as tabelas Medicamentos e
Animais. Como explicar essa confusão? É simples: “Um animal pode tomar vários
medicamentos e um medicamento pode ser tomado por vários Animais”.
O momento exato em que um determinado animal é associado a um determinado
medicamento está descrito na tabela Consultas, que registra o atendimento a um animal e o
medicamento prescrito pelo veterinário.
Veja a estrutura completa de relacionamentos de nosso Banco de exemplo:
Figura 10.7 – Relacionamentos do Banco
Os relacionamentos entre as tabelas são criados e mantidos para haver integridade e evitar
a redundância nos dados existentes no Banco.
INTEGRIDADE REFERENCIAL
Já pensou em cadastrar um animal na tabela apropriada com um código de Dono que não se
encontra na tabela Clientes? Isso não pode ser permitido em um BD se esses campos estão
relacionados.
Ou seja, devido ao relacionamento existente, só é permitida a inclusão de um animal se o
código do Dono fosse encontrado no campo Cod de algum registro da tabela Clientes. Códigos de
donos que não existem na tabela Clientes não serão aceitos no banco e o animal não poderá ser
inserido na tabela Animais.
Há um conjunto de regras impostas pelo BD para que se mantenha a integridade entre os
dados que serão inseridos ou apagados. O criador do Banco pode, por exemplo, indicar que quando
um registro for apagado da chave primária, sejam apagados todos os registros da chave estrangeira
coincidente. Seria assim: se um cliente for excluído da tabela Clientes, todos os animais que o têm
como Dono serão excluídos também.
LINGUAGEM
DE
CONSULTA - SQL
Armazenar os dados é, sem dúvida, a principal função dos Bancos de Dados, para isso
usamos as tabelas. Mas os SGBD nos permitem selecionar e manipular dados específicos do banco,
aumentando ainda mais a utilidade e a flexibilidade do mesmo. Para essa finalidade, usamos uma
Linguagem de Consulta.
Linguagem de Consulta é um conjunto de instruções que permitem ao usuário manipular os
dados armazenados nas tabelas e a própria estrutura do Banco.
A linguagem de consulta mais usada atualmente, em qualquer que seja o SGBD, é o SQL
(Structured Query Language – ou Linguagem Estruturada de Consulta).
Há dois tipos de instruções no SQL, as DML (Linguagem de Manipulação de Dados) que
permitem inserções, alterações e exclusões nos registros, e as instruções DDL (Linguagem de
Definição de Dados) que permitem alterações na estrutura do Banco, como a criação de tabelas e
campos, a alteração e a exclusão dos mesmos.
As principais instruções DML da Linguagem SQL são SELECT, INSERT INTO, UPDATE, DELETE.
As principais instruções DDL são CREATE, ALTER e DROP. Esses comandos permitem ao
usuário realizar alterações na estrutura do Banco de Dados.
Vamos primeiro dar uma olhada nas instruções DML:
Instrução SELECT
Esta instrução seleciona registros e campos específicos de uma tabela. A sintaxe geral da
instrução SELECT é a seguinte:
SELECT Campos FROM Tabelas WHERE Critérios
Vamos dar um exemplo e selecionar apenas os Cães da tabela Animais, mostrando todos os
campos da tabela:
SELECT * FROM Animais WHERE Especie=“Canino”
Figura 10.8 – Resultado da Instrução SQL anterior
Sobre a instrução acima, temos que:

SELECT Campos: Instrução SQL que seleciona para apresentar os campos
determinados. O sinal de * (asterisco) indica que TODOS os campos da entidade (tabela) serão
mostrados. Se for necessário especificar os nomes dos campos a serem mostrados, deve-se
separá-los por , (vírgula).

FROM Tabelas: Indica de que tabelas os campos serão selecionados, para informar
mais de uma tabela, separe seus nomes por , (vírgula).

WHERE Critérios: Indica a condição que deverá ser respeitada (avaliada) para a
seleção dos registros da tabela.
A Expressão a seguir seleciona, da tabela Clientes, apenas os clientes que possuem código
superior a 2 e apresenta apenas Nome e CPF no resultado:
SELECT Nome, CPF FROM Clientes WHERE Cod>2
Figura 10.9 – Resultado da instrução anterior
Caso o usuário deseje selecionar os animais que pertencem ao Cliente 2 ordenando a
listagem pelo nome do Animal (ordem alfabética), e mostrando apenas o nome do Animal, sua
espécie e sua raça, deve-se fazer o seguinte:
SELECT Nome, Especie, Raça FROM Animais WHERE Dono=2 ORDER BY Nome
Figura 10.10 – o uso da cláusula ORDER BY
A Cláusula ORDER BY pode ser usada para informar ao SGBD que quando proceder com o
resultado da consulta, ordene os dados pelo campo citado, no nosso caso, o Nome do animal. Se o
usuário terminasse a instrução com ORDER BY Nome DESC, a ordenação aconteceria de forma
decrescente (ou seja, de Z para A).
Ainda, um usuário pode selecionar os animais que são da espécie canina e que tem raça
indefinida mostrando seus nomes, donos e observações através do seguinte comando:
SELECT
Nome,
Dono,
Raça="Indefinida"
Obs
FROM
Animais
WHERE
Especie="Canino"
AND
Figura 10.11 – Uso de dois critérios de seleção unidos pelo operador AND (“e”)
No critério de uma instrução SELECT, podemos apresentar várias condições unidas por AND
(“e”) e OR (“ou”); esses termos são conhecidos como Operadores Booleanos.
Quando usamos AND, só serão selecionados os registros que satisfazem as duas condições
(uma E outra). Quando usamos OR, serão selecionados os registros que satisfazem pelo menos uma
das condições exigidas (uma OU outra, ou ainda AS DUAS).
Caso a comunicação envolva mais de uma tabela e a apresentação de campos de ambas em
uma mesma consulta, deve-se definir os campos através da sintaxe Tabela.Campo.
Exemplo: para selecionar Nome e Telefone dos clientes e Nome e Espécie dos animais, devese escrever o seguinte:
SELECT Clientes.Nome, Telefone, Animais.Nome, Especie FROM Clientes, Animais
Note que só é necessário preceder o nome do campo a ser pesquisado com o nome da tabela
se houver o mesmo nome de campo nas duas tabelas. Esse “Tabela” anterior ao nome do campo
é apenas para diferenciá-los.
Instrução INSERT INTO
Permite inserir dados nas tabelas do BD. A Sintaxe geral é assim:
INSERT INTO Tabela (campo1, campo2, campo3) VALUES (valor1, valor2, valor3)
Por exemplo, caso o usuário deseja inserir um novo Animal de código 9, Nome Shazam,
espécie Felino, Raça Persa e pertencente ao cliente 3 pode fazer o seguinte:
INSERT INTO Animais (CodigoA, Nome, Especie, Raça, Dono ) VALUES (9, "Shazam",
"Felino", "Persa", 3);
A instrução INSERT INTO não retorna uma listagem de registros, como a instrução SELECT,
mas modifica os dados de uma tabela, inserindo-lhe um registro novo no fim da tabela. Veja a nova
tabela Animais depois da instrução anterior:
Figura 10.12 – Novo animal adicionado na tabela Animais
Instrução UPDATE
A Instrução UPDATE da linguagem SQL permite que o usuário altere os valores contidos em
um ou vários registros específicos da tabela. Esta instrução se escreve assim:
UPDATE Tabela SET Campo=Valor WHERE Critérios
Vamos dar um exemplo: se todos os animais do Cliente 2 forem, na verdade, gatos (tudo
bem, deve-se demitir a pessoa que preencheu os dados do jeito como estão agora). Para alterar os
campos dos animais deste cliente, pode-se fazer o seguinte:
UPDATE Animais SET Especie=”Felino” WHERE Dono=2
Figura 10.13 – Resultado após a Instrução UPDATE (é, eu sei, as raças não ficaram combinando, mas aí é só você
alterar com outros UPDATE)
Instrução DELETE
Como o nome já mostra, esta instrução exclui um ou mais registros de acordo com um
critério. A sintaxe desta instrução é:
DELETE * FROM Tabela WHERE Critérios
Um exemplo pode ser o seguinte: Vamos excluir todos os gatos da tabela Animais do nosso
Banco de Dados.
DELETE * FROM Animais WHERE Especie="Felino"
Figura 10.14 – Tabela após exclusão de registros
Lembre-se, a instrução DELETE não apaga apenas um campo do registro (como por exemplo,
apagar apenas os nomes dos animais), esta instrução exclui o registro inteiro da tabela.
Agora chegou a vez das instruções DDL, que, como já foi dito, permitem alterações na
estrutura das tabelas:
Instrução CREATE
Essa instrução cria diversas entidades diferentes num banco de dados, como tabelas e views
(visões), entre outros. Para criar uma tabela, usamos a seguinte sintaxe:
CREATE TABLE Tabela (Campo1 Tipo, Campo2 Tipo, etc.)
Surgirá uma nova tabela no Banco com as configurações citadas na instrução acima.
Instrução ALTER
Esta instrução permite alterar a estrutura de uma tabela criada a partir da instrução CREATE
TABLE. Com esse comando, podemos criar, modificar e excluir campos das tabelas do banco. A
sintaxe básica para...
...adicionar um campo é:
ALTER TABLE Tabela ADD COLUMN Campo Tipo(tamanho)
...modificar um campo é:
ALTER TABLE Tabela ALTER COLUMN Campo Tipo(tamanho)
...excluir um campo é:
ALTER TABLE Tabela DROP COLUMN Campo
Exemplo: para adicionar, à tabela Animais, um campo chamado Sexo, do tipo texto, com
um caractere (apenas espaço suficiente para preencher com M ou F), a instrução seria a seguinte:
ALTER TABLE Animais ADD COLUMN Sexo TEXT(1)
Para alterar o campo criado anteriormente, para que ele passe a aceitar 10 caracteres, deve
usar essa expressão:
ALTER TABLE Animais ALTER COLUMN Sexo TEXT(10)
Para que referido campo seja excluído definitivamente da tabela, utiliza-se a seguinte
expressão:
ALTER TABLE Animais DROP COLUMN Sexo
Instrução DROP
A instrução DROP da linguagem SQL permite que o usuário exclua uma tabela do Banco de
Dados. A sintaxe básica deste comando é:
DROP Tabela
Exemplo, se o projetista do banco deseja excluir a tabela de Animais (o que não seria muito
inteligente num Banco de Dados de uma clínica veterinária), basta acionar o comando:
DROP Animais
CONHECENDO
O
MICROSOFT ACCESS
O Microsoft Access é um SGBDR de pequeno porte para ser usado com Bancos de Dados
pessoais e de pequenas e médias empresas. O Microsoft Access está inserido no Microsoft Office, a
suíte de programas de escritório da Microsoft.
Figura 10.15 – Painel principal do Banco de Dados da Clínica Veterinária, feito no Access
Uma das principais características a respeito do Access é a sua facilidade de uso, tanto para a
criação da estrutura do Banco de Dados em si, como para a manipulação de dados por parte dos
usuários finais do Banco.
O Microsoft Access permite que sejam criados e modificados vários objetos para o Banco de
Dados. Esses componentes são:

Tabelas (Tables): São as tabelas do banco, feitas para armazenar os dados. As
tabelas são os componentes básicos de um BD. Sem tabelas não é possível criar qualquer um dos
outros componentes.

Consultas (Querys): São os objetos que buscam e alteram dados das tabelas. Na
verdade, as consultas são apenas instruções SQL gravadas para uso posterior. A forma de criar as
consultas é bastante simples, tornando desnecessário que o usuário conheça a linguagem SQL.

Formulários (Forms): São as “janelas” que o projetista cria para fazer interface com
o usuário que irá utilizar o Banco. Os formulários são uma espécie de “maquiagem” para as
tabelas e consultas aparecem mais “agradáveis” na tela.

Relatórios (Reports): São os documentos que serão impressos no Banco de Dados.
Pode-se construir Relatórios para tabelas ou para Consultas.

Macros: São conjuntos de ações escritas em seqüência para que o Access realize
operações de forma automática. As macros no Access não têm o mesmo “formato” que no Excel
ou Word.

Módulos (Modules): São programas criados em VBA (Visual Basic for Applications),
a linguagem de programação que acompanha os aplicativos do Microsoft Office. Os módulos estão
para o Access assim como as Macros estão para o Word e Excel.

Páginas (pages): Este recurso acompanha apenas as mais recentes versões do
Microsoft Access e permite que o programa crie páginas dinâmicas para a Web que acessem os
dados do Banco. Essas páginas serão construídas nas linguagens ASP + HTML.
Tipos de Dados no Access
Um tipo de dado de um campo é a característica que define que tipo de informação aquele
campo poderá armazenar, como números, textos e até figuras. Cada tipo de dado é ideal para uma
determinada informação, e cada tipo de dado gasta uma quantidade específica de Bytes para
armazenar as informações na tabela. Os tipos de dados aceitos pelas tabelas do Access são:

Autonumeração: Campos definidos com esse tipo recebem números que se
incrementam automaticamente. O usuário do banco não poderá definir um valor para esse
campo, o próprio Access define um valor exclusivo para cada registro da tabela; Esse campo
armazena cada dado em 4 Bytes.

Texto: Campos com esse tipo de dado recebem caracteres alfanuméricos (texto) de
até 255 caracteres de comprimento. Esse tipo de dado é ideal para campos como nome,
endereço, etc. Cada caractere escrito num campo com esse tipo gasta 1 Byte (ASCII) ou 2 Bytes
(Unicode);

Memorando: Este tipo define que o campo poderá receber textos com até 65.536
caracteres de comprimento. Se o campo deve armazenar textos longos, esta é a melhor opção;

Número: Define que o campo só aceitará números; há vários tamanhos disponíveis
para esse tipo de dados (verifique no próximo tópico); É ideal para qualquer tipo de dados
numéricos, com exceção dos valores monetários;

Moeda: usado para armazenar valores monetários e para evitar o arredondamento do
valor do campo em cálculos matemáticos;

Sim/Não: Armazena apenas dados que podem assumir dois valores 0/1, sim/não,
verdadeiro/falso. Esse campo gasta apenas 1 bit (isso mesmo, um único bit);

Data/Hora: usado para armazenar dados de Data e de Hora. Armazena 8 Bytes.

Objeto OLE: em um campo definido com esse tipo de dados, podemos armazenar
documentos do Word, planilhas do Excel, Figuras, Apresentações do PowerPoint, sons, etc. Esse
tipo de dados permite armazenar qualquer objeto proveniente de qualquer aplicativo do Windows
que permita as operações de Copiar e Colar (filosofia OLE). Esse campo pode armazenar até 1 GB
de dados.

Hyperlink: Permite armazenar um atalho para uma página da Internet ou um
documento em qualquer computador da rede local ou dentro do próprio computador onde o
Banco está armazenado.

Assistente de Pesquisa: é um tipo de dados que apresentará uma listagem
adquirida de outra tabela ou consulta do Banco. Para esse tipo de dados existir, é necessário que
haja um relacionamento entre a tabela em questão e a entidade de onde os dados são
pesquisados.
Figura 10.16 – Tabela das consultas veterinárias sendo construída (tipos de dados sendo definidos para os campos)
Tamanhos Para os Campos Numéricos
Uma vez escolhido o tipo de dados Número para um campo, é necessário definir o tamanho
do campo, ou seja, quantos bytes o Access vai gastar para armazenar o número em questão. Os
tamanhos dos dados para um campo número são:
Byte;

Byte: permite armazenar números inteiros de 0 (zero) a 255. Este tamanho gasta 1

Inteiro: Gasta 2 Bytes, e armazena números inteiros (não-fracionários) de -32.768
até 32.767;

Inteiro Longo: Gasta 4 Bytes e armazena números inteiros de -2 bilhões a +2
bilhões (é claro, isso é uma aproximação);

Simples: Gasta 4 Bytes e armazena números fracionários com precisão de 7 casas
decimais;
bytes;

Duplo: Armazena números fracionários com precisão de 15 casas decimais e gasta 8

Decimal: Armazena números com precisão de 28 casas decimais e consome, para
isso, 12 Bytes por dado armazenado;
Se você não entendeu as diferenças de tamanhos armazenados nesses campos, veja o
exemplo: O número 126 caberia em um campo do tipo Byte e gastaria apenas 1 Byte, porque seria
armazenado como uma seqüência binária de 8 bits (01111110).
Se este mesmo número fosse armazenado, digamos, num campo tipo Inteiro (que armazena
cada número como uma seqüência de 2 Bytes – 16 bits), ele seria assim: 00000000 01111110.
Se o mesmo 126 fosse inserido em um campo tipo Inteiro Longo, ele seria traduzido como
00000000 00000000 00000000 01111110, e, com isso, gastaria 4 bytes para ser armazenado.
A escolha do tamanho do campo numérico depende do tipo de informação que será
armazenada pelo campo.
Tipos de Consultas do Access
Uma consulta, para o Access, é tão somente uma expressão SQL armazenada para uso
posterior. Como há vários comandos na linguagem SQL, há vários tipos de consultas no Access, a
saber:

Consulta Seleção: É uma consulta construída a partir da instrução SELECT. Esta
consulta serve para selecionar campos e registros definidos das tabelas do Banco;

Consulta Acréscimo: É uma consulta feita a partir da instrução INSERT INTO. Esta
consulta é utilizada para adicionar registros às tabelas;

Consulta Exclusão: É uma consulta baseada na instrução DELETE. É utilizada para
excluir registros de uma tabela;

Consulta Atualização: É usada para alterar os valores de determinados campos em
uma tabela. Essa consulta é construída por intermédio da instrução UPDATE;

Consulta Criar Tabela: Uma consulta que permite a criação de uma tabela no Banco
de Dados. Nessa consulta, é utilizada a instrução CREATE TABLE.
Figura 10.17 – Os vários tipos de consultas do Microsoft Access
Formulários e Relatórios no Access
Formulários, no Access, são as janelas que o projetista cria para servir de interface entre o
usuário e os componentes básicos do Banco (tabelas e consultas). As telas usadas pelos atendentes
para preencher os dados dos cadastros dos clientes são os formulários.
Figura 10.18 – Formulário de acesso à tabela Animais
Relatórios são os documentos impressos que apresentarão dados das tabelas e consultas do
Banco. Se um banco de dado tem que emitir uma “nota” ou “recibo” da consulta veterinária, esse
documento será um relatório.
Figura 10.19 – Visualização de um relatório
Macros e Módulos
Para automatizar tarefas no Access, podemos usar dois tipos de objetos, as Macros e os
Módulos.
Macros são seqüências de ações predefinidas pelo usuário usadas basicamente para realizar
tarefas simples, que já estão definidas numa lista no Access. Uma macro pode ser acionada por um
botão de comando em um formulário ou por outra macro.
Figura 10.20 – Macro sendo criada
Como se pôde perceber, para criar uma macro no Access, não é necessário saber programar,
basta selecionar as ações predefinidas em seqüência e definir seus argumentos que o SGBD fará o
resto durante a execução da mesma.
Para fazer um módulo é mais complicado: o usuário normalmente precisa conhecer a
linguagem de programação VBA, que acompanha o Microsoft Office. Veja um exemplo de Módulo em
VBA:
Figura 10.21 – Exemplo de módulo (em VBA)
Claro que eu não escrevi esse módulo completamente (na verdade, eu não escrevi nada
nesse módulo). O Access permite que o usuário crie uma Macro (bastante simples, como vimos) e a
converta em módulo. As figuras 9.20 e 9.21 apresentam objetos diferentes (macro e módulo,
respectivamente) que fazem a mesma coisa. O módulo mostrado na Figura 10.21 foi criado a partir
da Macro mostrada na figura anterior.
BANCOS
DE
DADOS
NAS
EMPRESAS
Há alguns termos muito usados para definir alguns conceitos sobre os Bancos de Dados em
ambientes empresariais, e que poderiam causar certas complicações nas provas de Concursos.
Esses termos são muito simples e não deveriam gerar tanta preocupação.

Data Warehouse: Bancos de dados enormes, que armazenam informações de todos
os setores de uma empresa para dar suporte à tomada de decisões estratégicas. Exemplo: Os
sistemas que armazenam dados de clientes, fornecedores, produtos, entradas, saídas, perdas,
pessoal, contabilidade de uma empresa (todos juntos em um único banco).

Data Mart: Bancos de dados que armazenam informações normalmente de um
determinado setor da empresa. Serve, como o DW, para auxiliar na tomada de decisões vitais
para a empresa, mas não resume dados de várias fontes ou setores.

Data Mining: Algo como “Mineração de Dados”, definem as ações realizadas, no
Banco de Dados, para detectar relacionamentos entre as informações armazenadas. Um exemplo:
em redes varejistas, programas que identificam clientes com interessas comuns.

OLAP: Significa “Processo Analítico On-line” e descreve uma ferramenta, usada pelos
usuários finais, capaz de extrair dados de um Data Warehouse e analisá-los. A consulta ao DW é
interativa, permitindo aos usuários verificarem o “porquê” dos resultados obtidos.

Bussiness Intelligence: Ou “Inteligência de Negócios” é dos conceitos mais “na
crista da onda” hoje em dia no que concerne a Gestão Empresarial. A inteligência resulta da
coleta de dados, transformação desses dados em informação útil e, por fim a análise dessas
informações contextualizadas para que sejam aplicadas a processos decisivos e gerem vantagens
competitivas. Em suma, BI descreve uma série de componentes, técnicas e recursos para o
armazenamento de dados e a sua utilização em prol da estratégia de negócios.
SGBDs Corporativos
O Access é um excelente Gerenciador de Bancos de Dados, mas é indicado para aplicações de
pequeno porte. Para o gerenciamento de grandes volumes de dados, recomenda-se a utilização de
um SGBDR mais robusto. Os dois nomes mais conhecidos são o Oracle, da Oracle Corp., SQL
Server da Microsoft e o MySQL (SGBD Gratuito para ambientes Linux e Windows).
O Oracle é o SGBDR preferido pela maioria das empresas, sua licença de uso é muito cara,
mas ele está presente em grande parte dos sistemas de armazenamento de grandes volumes de
dados.
Figura 10.22 – Interface do Oracle
O SQL Server, da Microsoft é o principal concorrente do Oracle. Sua facilidade de uso e
configuração são suas principais vantagens (mas continuo dizendo que a maioria prefere o Oracle).
Figura 10.23 – Interface do SQL Server
Os imensos obstáculos para o uso dos SGBDs corporativos (normalmente esses “imensos”
obstáculos são na verdade, os preços das licenças), levaram a “galera” do software livre a criar o
MySQL, um SGBDR completamente gratuito para ser usado em ambientes LINUX (há versões para
Windows também).
Figura 10.24 – Interface do MySQL
CONSIDERAÇÕES FINAIS
Bem, amigos, acredito que chegamos ao fim desta nossa seção. Mas não resuma seus
conhecimentos a respeito de Bancos de Dados somente a isso. Continue estudando, procure pela
Internet em sites especializados. Leia mais e se informe melhor sobre os principais conceitos ligados
aos Bancos de Dados. ser um site de um banco, por exemplo, pode criar uma conexão criptografada
somente para que o cadeado apareça e o usuário acredite se tratar realmente do site do seu banco.
Download