O Microsoft Access (nome completo Microsoft Office Access), também conhecido por MSAccess, é um sistema relacional de administração de banco de dados da Microsoft, incluído no pacote do Microsoft Office Professional, que combina o Microsoft Jet Database Engine com uma interface de usuário gráfica (graphical user interface). Ele permite o desenvolvimento rápido de aplicações que envolvem tanto a modelagem e estrutura de dados como também a interface a ser utilizada pelos usuários.

Microsoft Access é capaz de usar dados guardados em Access/Jet, Microsoft SQL Server, Oracle, ou qualquer recipiente de dados compatível com ODBC.

O desenvolvimento da estrutura de dados se dá de forma muito intuitiva, bastando que o desenvolvedor possua conhecimetos básicos em modelagem de dados e lógica de programação.

Programadores relativamente inexperientes e usuários determinados podem usá-lo para construir aplicações simples, sem a necessidade de utilizar ferramentas desconhecidas.

Microsoft Access também foi o nome de um programa de comunicação da Microsoft, destinado à competir com ProComm e outros programas. Essa versão provou ser um fracasso e foi abandonada. Anos depois a Microsoft reusou o nome para o seu programa de banco de dados.

Histórico


O primeiro formato da MS Access, feito para rodar em DOS, era na verdade um software de comunicação que objetivava competir no mercado com grandes produtos da mesma finalidade. No entanto este projeto da Microsoft não emplacou no mercado. Apenas no segundo semestre de 1992 a Microsoft lançou seu primeiro Sistema de Gerenciamento de Banco de Dados: o Microsoft Access (MS Access).

Para a Microsoft havia uma grande vantagem quanto ao mercado, como era a dominadora do seu próprio mercado, foi a primeira a lançar um software executável em plataforma Windows, enquanto que os outros programas deste segmento, liderados pela dBa-se, eram voltados para o ambiente DOS. Ao ser lançado por um preço bastante atrativo o MS Access 1.0 para Windows foi logo tomando conta do seu espaço. Um dos fatores que muito contribuiu pra isto foi o seu preço de apenas noventa e nove dólares e também contamos com os investimentos que os administradores da Microsoft fizeram como a compra da Fox Software por cento e setenta milhões de dólares.

Embora as vantagens de lançamentos, faltava de um pacote de ferramenta para desenvolvedores, o que foi princípio para muitas reclamações, assim como a limitação do software de 128MB de memória. Já em 1993 é lançado no mercado MS Access 1.1 com a ampliação para 1GB de memória e junto a ele veio Distribution Kit e os incentivos da para que os desenvolvedores criassem seus aplicativos e os vendessem sem a necessidade do cliente ter uma versão do Access em seu computador, bastava apenas utilizar o Access Runtime.

No entanto o programa ainda precisava de reajustes e dois anos depois modificações apareceram com a versão 2.0. Agora era possível trabalhar com 254 tabelas ao mesmo tempo e no mesmo arquivo de dados. O novo ambiente de programação dava facilidades ao desenvolvedor e agora também não era mais necessário digitar imensas linhas de códigos. Neste mesmo ano chega ao Brasil a versão em português do Access.

A nova versão do MS Access , em 1995, pula para 7.0 acompanhando o pacote de programas Microsoft Office 7.0. Introduzida na era de 32 bits a nova versão do Access vem acompanhada com a linguagem Visual Basic for Applications (VBA), com o seu próprio ambiente de programação. Além do recurso de replicar banco de dados, dando a possibilidade de trabalhar off-line em cópias de banco de dados, podendo ser sincronizada com a base central.

Em março de 1997 é lançada a versão 8.0, preparada para internet, capaz de gravar hiperlinks e salvar arquivos em formato HTML. E em 1999 lança a versão 9.0, também conhecido como MS Access 2000, com suporte a OLE DB e o relacionamento com bases de dados corporativa. É neste momento que a Microsoft retira o FoxPro do pacote Visual Studio mantendo-o como um produto independente até hoje. Com isso, em 2002, a nova versão com suporte a uma linguagem mais comum, o XML (Extensible Markup Language), que é uma linguagem de marcação de dados e também dá uma maior integralidade com o browser, podendo criar páginas em formato HTML de acesso as dados do banco.

O versão Access 2003 na sua versão 11 traz maior integração com browser, além da linguagem VBA, marcação em XML e é incorporado a linguagem SQL nas consultas de tabelas do banco.

Usos


Geralmente uma aplicação desenvolvida com o Access através da linguagem de programação VBA (Visual Basic for Applications) consiste em dois arquivos, um que se denomina BackEnd, onde ficam armazenadas todas as tabelas com seus respectivos relacionamentos, e outro denominado FrontEnd, onde ficam armazenados os códigos fontes, formulários, módulos, consultas, macros, etc.

O código fonte pode ser compilado, mas não é possível gerar um executável. Para rodar os aplicativos desenvolvidos é necessário que o usuário possua em sua estação de trabalho o MSAccess instalado ou pelo menos o seu Runtime que vem a ser uma versão enxuta do MSAccess que servirá apenas para rodar os aplicativos sem a possibilidade de desenvolvimento.

Com o Microsoft Access é possível desenvolver desde aplicações simples como por exemplo, um cadastro de clientes, controle de pedidos até aplicações mais complexas, como por exemplo, todo o controle operacional, administrativo e financeiro de uma pequena ou até mesmo de uma média ou grande empresa, pois os aplicativos desenvolvidos podem rodar perfeitamente em uma rede de computadores e os dados armazenados pelo sistema podem ser publicados na Intranet ou até mesmo na Internet.

Access é amplamente usado por pequenos negócios, departamentos de corporações de grande porte e como hobby de programadores que desejam criar sistemas customizados encarregados de criar e manipular dados. Sua facilidade de uso e potentes ferramentas de planejamento dão ao programador não-profissional bastante poder de uso, requerendo pouco esforço. Porém esta facilidade de uso pode ser enganosa. Este tipo de programador é muitas vezes um funcionário de escritório com pouco ou nenhum treinamento em desenvolvimento de dados ou aplicações. Devido à oportunidade que o Access fornece à este tipo de funcionário de criar sistemas utilizáveis, muitos são levados à pensar que esta ferramenta é limitada apenas à estas aplicações.

Alguns desenvolvedores de aplicação utilizam o Access para o desenvolvimento de aplicações rápidas (rapid application development), especialmente para a criação de protótipos e aplicações autônomas que servem como ferramentas para vendedores.

Access é pouco escalável se o acesso aos dados for feito via uma rede, portanto qualquer aplicação que seja usado por mais de um punhado de pessoas tende a depender em soluções com base no Cliente-Servidor tais como: Oracle, DB2, Microsoft SQL Server, PostgreSQL, MySQL, MaxDB, ou Filemaker. Porém, um Access do tipo "front end" (as formas, os relatórios, pedidos de busca e códigos VB) pode ser usado paralelamente a diversos tipos de "back ends", incluindo o próprio Access, o Microsoft SQL Server, o Oracle ou qualquer outro produto compatível com ODBC. Esse método permite ao desenvolvedor a mudança dos dados de uma aplicação madura para um servidor mais avançado sem sacrificar o projeto em andamento.

Muitos desenvolvedores que usam o Microsoft Access também utilizam a nomenclatura Leszynski, embora não seja um fato universal; não se trata de uma regra reforçada pelo DBMS.

Características


OXE Oxe Um dos benefícios do Access do ponto de vista do programador é sua relativa compatibilidade com o SQL – buscas podem ser visualizadas e editadas como sendo indicações de SQL, e estes por sua parte podem ser usados diretamente em Macros e Módulos VBA para manipular tabelas do próprio Access. Usuários podem misturar e usar ao mesmo tempo VBA e Macros para formulários de programação e lógica, além de serem oferecidos possibilidades com técnicas de orientação-objeto.

O escritor de relatórios do Access, mesmo sendo capaz da criação sofisticada de relatórios, não é tão potente quanto outro escritor de relatórios de dados – Crystal Reports. MSDE (Microsoft SQL Server Desktop Engine) 2000, a mini-versão do MS SQL Server 2000, é incluído com a edição de desenvolvedor do Office XP e pode ser usado ao lado do Access como uma alternativa ao Jet Database Engine.

Versões anteriores do MSDE e do Microsoft Exchange Server de fato usam o motor do Jet para lidar com volumes elevados de dados e inserir uma camada de aplicação "falsa" para as aplicações que se encontram acima dela. A falta de conhecimento à respeito deste fato têm contribuído à uma desmerecida falta de respeito quanto à família de produtos Access/Jet, particularmente quando se diz respeito a projetos de "grande porte".)

A função "cortar e colar"(cut and paste) do Access pode torná-lo uma ferramenta útil para a conexão entre diversos bancos de dados (por exemplo, entre o Oracle e o Microsoft SQL Server durante conversões de dados ou bancos de dados).

Access disponibiliza várias funções de exportação e importação (import and export), que permitem a integração entre o Windows e outras aplicações de plataforma, muitas das quais podem ser executadas dentro das próprias aplicações ou manualmente pelo usuário. Serve, como exemplo, o bastante compacto formato SNP para a compartilhação de relatórios perfeitamente formatados entre usuários que não dispõem de uma versão completa do Access.

Diferentemente dos RDBMS completos, o motor de banco de dados Jet da Microsoft não dispõe de gatilhos de bancos de dados e procedimentos armazenados (stored procedures).

A partir do MS Access 2000 (Jet 4.0), há um sintaxe que permite a criação de pedidos de busca com parâmetros, semelhante à criação de procedimentos armazenados, porém tais procedimentos são limitados à uma declaração por procedimento. [1]

O Microsoft Access permite que formulários contenham códigos que são ativados à medida que mudanças são feitas à uma tabela subjacente (contanto que as modificações são feitas apenas com aquele formulário), e é comum usar buscas "pass-through" e utras técnicas no Access para ativar procedimentos armazenados em RDBMSs que suportam este tipo de sistema.

Em arquivos de projeto de banco de dados do Access ADP (suportado em MS Access 2000 e adiante), as ferramentas relacionadas aos bancos de dados são completamente diferentes, uma vez que este tipo de arquivo é conectado ao MSDE ou ao Microsoft SQL Server, ao invés de usar o motor Jet. Deste modo, ele suporta a criação de quase qualquer objeto no servidor subjacente (tabelas com restrições e gatilhos, visualizações, procedimentos armazenados e UDF's).

Contudo apenas formulários, relatórios, macros e módulos são armazenados no arquivo ADP (outros objetos são armazenados no banco de dados "back end").

Desenvolvimento


A linguagem de programação disponível no access é a Microsoft Visual Basic for Applications, igualmente à outros produtos da série Microsoft Office.

Duas bibliotecas de componentes COM de acesso de banco de dados são providenciadas: a legacy Data Access Objects (DAO), apenas disponível com o Access, e o novo ActiveX Data Objects (ADO).

Microsoft Access é facilmente aplicado à projetos pequenos porém sofre problemas de escala com projetos maiores se as aplicações forem mal desenvolvidas.

Todas as buscas no banco de dados, formulários e relatórios são armazenados no banco de dados, e visando os ideais de um modelo relacional, não há possibilidade de montar uma hierarquia estruturada fisicamente a partir deles.

Uma técnica de desenvolvimento é dividir uma aplicação Access entre dados e programas. Um banco de dados deve conter apenas tabelas e relações, enquanto outro contém todos os programas, formulários, relatórios e pedidos de busca, assim como as conexões para as tabelas do primeiro banco de dados.

Infelizmente, o Access não permite trilhas quando são feitas as conexões, e o ambiente de desenvolvimento deve ter a mesma trilha do ambiente de produção (embora seja possível escrever sua própria rotina de "conexão dinâmica" em VBA, que pode procurar um arquivo "back end" específico através de uma pesquisa dentro da árvore do diretório, se não puder encontrá-lo no caminho atual.

Esta técnica também permite que o desenvolvedor divida a aplicação entre arquivos diferentes, sendo então possível uma certa estrutura.

Fonte: Wikipédia