1 de agosto de 2007

Como colocar um MDB ou ACCDB em Rede e porquê?

INTRODUÇÃO

Uma das perguntas frequentes referenciadas em muitos Fóruns e Grupos de Notícias da Microsoft é COMO UTILIZAR O ACCESS EM REDE?

Um dos bens mais preciosos e com mais valor de uma Empresa, é sem dúvida a Informação armazenada e tratada ao longo dos anos, senão vejamos; Imagina que perdes os Dados de Facturação e Dados de Clientes da tua Empresa ou Empresa para a qual trabalhas? Será que o impacto económico não seria enorme? Agora imagina que podes partilhar essa informação com todos os Departamentos e Funcionários dessa mesma Empresa? É obvio que informaticamente é sem margem para dúvidas é uma forma de acesso instantâneo à informação, vai reflectir-se na produção da Empresa e na Produtividade dos Funcionários. Podermos chegar então à conclusão que se utilizares o teu MDB em Rede terás muitas vantagens, mas agora como o fazer? Qual a melhor forma de implementação sem perder velocidade de acesso aos dados? É isso que vamos ver neste artigo.

BASES DE DADOS BACK-END E FRONT-END

O que é uma Base de Dados Back-End? Do Inglês BACK (Atrás), é a BD onde os Dados são Armazenados, ou seja a BD (MDB) que inclui as TABELAS e suas RELAÇÕES e que normalmente se encontra numa pasta Partilhada num Servidor com Segurança Activa (Raid 5 Etc…) e Segurança Passiva (Backups Físicos para Datatape, CD ou DVD, Etc…). NESTA BASE DE DADOS SÓ FICAM AS TABELAS

O que é uma Base de Dados Front-End? Do Inglês FRONT (Frente), á a BD que fica na Máquina Cliente, máquina do Utilizador (MDB ou MDE). NESTA BASE DE DADOS FICAM TODOS OS OUTROS OBJECTOS, Formulários, Macros etc. MENOS AS TABELAS

USANDO O DIVISOR DE BASES DE DADOS DO ACCESS

Porque dividir a Base de Dados?

Como vimos na introdução enumerei algumas vantagens de utilização de Dados Partilhados, o que a divisão irá fazer é mover as Tabelas da Base de Dados actual para uma nova Base de Dados BACK-END. Em ambientes Multi-utilizador (REDE), reduz o tráfego na rede e permite continuar as desenvolver o FRONT-END sem afectar os DADOS contidos no BACK-END. Este procedimento tem como vantagem também a utilização dos Dados sem perturbar os Utilizadores.

Como Dividir a Base de Dados?

  1. Abre o teu Projecto MDB

  2. Vai a FERRAMENTAS – UTILITÁRIOS DE BASES DE DADOS – DIVISOR DE BASE DE DADOS

  3. A Caixa de Diálogo vai aparecer para DIVIDIR A BASE DE DADOS

  1. Escolhe o Nome do teu BACK-END e local no PC Local ou na REDE, Seguidamente em DIVIDIR

Verás a confirmação de Sucesso.

Ok, já temos a nossa BD dividida, mas agora tenho as Tabelas num MDB e os restantes Objectos em outro, como vou ligar as Tabelas?

Por defeito as Tabelas ficam logo Lincadas ao MDB FRONT-END, como saber se estão ligadas? Verifica a imagem seguinte e repara que o Ícone que identifica as tabelas mudou. Mas agora como faço para os outros FRONT-END? Verifica o capítulo (Usando o Gestor de Tabelas Ligadas)

USANDO O GESTOR DE TABELAS LIGADAS

Abre o teu Projecto MDB

  1. Clica numa Zona neutra na Janela da Base de Dados na parte de TABELAS com o BOTÃO DIREITO DO RATO e depois em LIGAR TABELAS

  2. A Caixa de Diálogo vai aparecer, escolhe o nome do MDB que colocastes no passo anterior clica no botão LIGAR

  3. Verás então as Tabelas contidas no BACK-END (Clica em SELECCIONAR TUDO e OK)

PRONTO – Estás a trabalhar normalmente como num Projecto para Monoposto

CONCLUSÃO

Os Procedimentos que efectuastes aplicam-se unicamente quando já tens as Tuas TABELAS criadas e RELACIONADAS e não vais prever alterar nada que venha a por em causa a fiabilidade dos Dados. Se quiseres acrescentar mais tabelas podes utilizar o Gestor de Tabelas Ligadas.

Se quiseres podes criar, apagar renomear Tabelas ou Campos e suas Propriedades usando ADOX, ADODB ou JET SQL

Eu Sugiro JET SQL

Link: http://msdn2.microsoft.com/en-us/library/aa140015(office.10).aspx

ADODB, ADOX - Programaticamente alterar qualquer objecto Access

Para quem tiver mais tempo (Requer Conhcimentos Avançados) EN

http://msdn2.microsoft.com/en-us/library/aa139984(office.10).aspx

Concorrência de Registos: sugiro que utilizes um FRONT-END para cada Maquina Cliente, tens uma desvantagem que é teres de actualizar em todos os PCs, mas compensa o trabalho visto se apontares um Link para um MDB único vais começar a ter problemas de crescimento anormal do MDB e problemas de CONCORRÊNCIA DE REGISTOS entre os UTILIZADORES

Lembra-te que é mais seguro distribuíres um MDE nas Máquinas Cliente, caso contrário os utilizadores terão acesso ao Código fonte VBA e alterar algo.

Data: Setembro/2004, Revisto em Junho de 2007

Autor: João Pedro Tito Lívio

Microsoft MVP Office Core

www.access.online.pt

Sem comentários:

Enviar um comentário

Like