Usando RDO - Remote Data Objects (Objetos de Dados Remotos)


Conteúdo

Introdução.

Nesta altura do campeonato voce já deve estar familiarizado com a DAO (se não estiver sugiro que não prossiga com a leitura ) com a sintaxe básica da linguagem SQL e em como utilizar a base de dados Access no Visual Basic.

Na verdade este é o ponto de partida de quase todos que desejam trabalhar com banco de dados, afinal temos á mão um banco de dados SQL , neste caso o Access, e uma ferramenta eficiente para tratar as aplicações de banco de dados , o mecanismo Jet do Visual Basic.

Você com certeza já desenvolveu alguma aplicação usando banco de dados e tudo funcionou bem, portando você não tem do que se queixar quer do Visual Basic quer do Microsof Access. Mas a partir deste artigo vamos mostrar que o Access tem suas limitações e que é possível migrar para outro Banco de dados Relacional mais robusto e avançado.

Se você submeter sua aplicação que utiliza o banco de dados Access a um ambiente multiusuário com acesso concorrente com mais de 20 usuários você começara a ter sérios problemas, pois a base irá se corromper com frequência , isto sem contar nos diversos tipos de conflitos e travamentos que o deixarão literalmente 'pirado'.

Imagine então se sua aplicação precisar dar acesso a milhares de usuários simultaneamente e precisar processar um grande volume de dados da ordem de milhões de registros. Neste caso esqueça definitivamente o Access, pois ele não suportará tal carga de processamento e de acesso.

Oracle e SQL Server (os mais conhecidos) são exemplos de banco de dados projetados para suportar um alto volume de processamento e acesso, sendo por isto largamente usados pelas grandes empresas.E daí ? , você pode estar pensando, onde o VB entra nesta história ?. Bem , a boa notícia é que você pode acessar essas bases de dados num ambiente Cliente-Servidor usando o Visual Basic como Front-End da aplicação deixando o processamento dos dados por conta do Servidor de Banco de Dados.

Existem cinco maneiras de acessar essas bases de dados : via JET/DAO ODBC, via VB/SQL , via API ODBC via RDO e via ADO.

A RDO foi disponibilizada a partir do Visual Basic 4.0 (Versão 1.0) e foi aprimorada no Visual Basic 5.0 (Versão 2.0). Ela oferece uma maneira simples e eficiente para acessar fonte de dados ODBC , sendo mais rápida que as demais técnicas aliando a simplicidade da DAO e a eficiência do VB/SQL e ODBC.(A ADO será abordada futuramente).

Além disto a RDO apresenta as seguintes vantagens:

  1. Utiliza menos recursos do sistema e é mais eficiente que a DAO , que foi desenhada para acessar base de dados ISAM. e por isso trás consigo todo o mecanismo Jet Engine. Já a RDO como foi projetada para acessar base de dados ODBC não precisa deste mecanismo.

  2. Com o RDO podemos usar os controles vinculados. Com OBDC e VB/SQL temos que usar código e controles não vinculados.

  3. O RDO fornece o RemoteData Control - RDC que é similar ao Data Control do JET/DAO. Assim podemos fazer uma conexão com base de dados OBDC quase sem codificação.

  4. RDO permite o acesso a stored procedures, suporta também executar consultas de forma assincronas, permite a manipulação de múltiplos ResultSets.

  5. RDO permite compilar e armazenar no servidor consultas parametrizadas

  6. Com RDO podemos usar server-side cursos (conjunto de registros gerados no servidor).

  7. Podemos limitar o número de linhas processadas nas consultas pelo servidor.

Para desenvolver uma aplicação usando RDO você precisa ter instalado o VB 4.0 ou o VB 5.0 (Versão Enterprise) os drivers ODBC e um DataSource registrado (DSN) em cada máquina que irá rodar seu sistema.

Conteúdo

Configurando o seu sistema - Criando um DataSource

Vejamos como instalar o DataSource:

  • Abra o painel de controle e dê um duplo clique sobre o ícone ODBC
  • Como iremos nos conectar a uma base de dados Access , iremos registrar um DSN usando o drive "Microsoft Access Driver 32 bit". Para instalar o drive clique no botão ADD.
  • Selecione o driver desejado e clique no botão OK. (Você pode instalar qualquer drive ODBC que esteja presente no seu sistema.)
  • Informe o nome para o DSN - No nosso caso usaremos rdoteste e a seguir clique no botão Select... para indicar o nome da base de dados.
  • Para este exemplo iremos nos conectar ao banco de dados escola.mdb
  • Ao final o seu DataSource deverá aparecer indicado no quadro de diálogo Data Sources.

OBS:Os quadros de diálogos podem ser diferentes para o seu sistema, mas o procedimento é similar ao aqui mostrado.

Se tudo deu certo podemos inicar o nosso primeiro projeto usando RDO.

Conteúdo

RDO - Usando RDC - RemoteData Control - Seu primeiro Projeto.

Vamos por a mão na massa:

  1. Inicie um novo projeto no VB , e, não esqueça de fazer referência a biblioteca RDO.
  1. O ícone deve aparecer na barra de ferramentas.
  1. A figura acima mostra o formulário usado na sua aplicação, nele utilizamos o controle DBGrid , um label , um botão de commando e naturalmente o controle MSRDC - RemoteData Control.
  2. Estaremos nos conectando a Tabela Tblalunos do banco de dados Escola.mdb, e iremos mostrar no Grid o nome, endereço e o telefone dos alunos.(Na minha máquina o path é : d:\escola\escola .mdb na sua você deve fazer as adaptações pertinentes)
  1. Selecione o controle MSRDC , configure as propriedades:

Caption = Teste de Conexão com RDO e a propriedade

SQL = Select tblalunos.nome,tblalunos.endereço,tblalunos.telefone from tblalunos Order by nome;

  1. Clique na propriedade Custom e selecione o DataSource que você registrou, deixando Username e Password em branco.
  1. Agora ajuste o tamanho do DBGrid , vincule-o ao controle MSRD1 e configure as colunas a serem mostradas na sua aplicação.
  1. Todo o código que você precisa esta mostrado acima:
  • O código para o botão Sair
  • O código para alinhamento das colunas do Grid.
  1. Finalmente execute o projeto ,e , estando tudo certo eis na figura acima a cara do seu primeiro projeto usando RDO com RDC - RemoteData Control. Simples não ????

Conteúdo

Por enquanto é oque tinha para dizer. Tchau...