Ir ao conteúdo
  • Cadastre-se

Vb X Access


wrath

Posts recomendados

Fala pessoal,

Eu utilizo o Visual Basic 6.0 no trabalho e em casa, para criar programas simples, para gerenciamento de empresas e consultórios, coisa do tipo.

o problema é que aqui em casa, eu não consigo associar o VB ao Access, para banco de dados!

tem algum patch de correção para isso? É muito importante!

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Olá,

Não se trata de "associar", mas sim de usar ou bibliotecas de objetos ou controles para conexão e manipulação do banco de dados.

Você pode usar:

1) o já obsoleto Controle Data (presente na barra de ferramentas do VB5 e 6, como padrão, que usa o antigo DAO - Data Access Objects)

2) o mais atual Controle "Microsoft ADO Data Control" (tem que ser acrescentado à barra de ferramentas)

3) ou então variáveis que referenciam diretamente objetos das bibliotecas DAO (Data Access Objects) ou ADO (ActiveX Data Objects, mais recomendável)

Se você desenvolve programas simples e que gerenciam pequeno volume de dados, o Controle Data faz o serviço muito bem e sem complicações.

Se quiser um exemplo, diga o que você tem em mente e o pessoal aqui passa alguma coisa.

B)

Link para o comentário
Compartilhar em outros sites

Bem, acho que não fui muito claro, desculpe!

Eu preciso usar o VB e data, com Access! é uma das exigências do cliente!

Preciso usar o Access como banco de dados, e o VB em casa não faz isso!

no trabalho ele funciona, pois a versão é especial para empresas, só que não posso usar a mesma em casa!

preciso muito usar o Access como banco de dados, ou não recebo $$!

Utilizo o ADO Data Control, mas preciso muito usar o Access como banco de dados!

Se quiser um exemplo, diga o que você tem em mente e o pessoal aqui passa alguma coisa.

O programa é mais ou menos o seguinte:

Criar um programa em VB para cadastar, Pesquisar (pelo nome), Navegar e Excluir um banco

de dados, com as seguintes Informações:

Cliente.MDB

* NCLI ................................... Número do cliente

      
NOME.......................................Nome do cliente
CPF ---------> XXX.XXX.XXX - XX............CPF do cliente
ENDERECO...................................Endereço do cliente
BAIRRO.....................................Bairro do cliente
CEP........................................CEP do cliente
CIDADE.....................................Cidade do cliente
ESTADO.....................................Estado do cliente

TEL..........................................Telefone do cliente

FAX..........................................Fax do cliente

CEL..........................................Celular do cliente

Obs: - Campo NCLI será a chave primária do e não deverá ser digitada pelo usuário.

- Os campos de cor azul, são depreenchimento obrigatório.

- Calcular o cheque dígito do CPF do Cliente e aceitar somente se o mesmo estiver correto.

- Formatar na tela o campo CPF --> 999.999.999-99 <--

- Formatar na tela os campos Tel, Fax, Celular --> 9999-9999 <--

Falou!

Link para o comentário
Compartilhar em outros sites

3) ou então variáveis que referenciam diretamente objetos das bibliotecas DAO (Data Access Objects) ou ADO (ActiveX Data Objects, mais recomendável)

Aproveitando o topico gostaria de uma ajudinha aqui.... eu tenho um programa q usa banco de dados access. e tipo tenho percebido q ele só funciona em maquinas que tem o access instalado, se tento roda em alguma maquina que não tenha o access no momento em que eu tento grava ou mexe no banco da a mensagem

"Activex Can't creat objetct" e o programa fecha... acredito que não seja o access que precise mas algum dessas mer.. de acesso a dados aí...

o codigo que referencia o bd é


Set db = OpenDatabase(App.Path + "\db.mdb")
SQL = "select * from TABELA"
Set d = db.OpenRecordset(SQL, dbOpenDynaset)

intao tipo, pra mim distribuir meu prog pra maquinas sem que o access esteja instalado o que deveria ser atualizado em tal maquina??

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Pessoal, acho que para os dois casos o que está faltando são os drivers do Access.

É isso que dá esse tipo de erro, como o 429 por exemplo (ActiveX can't create object). Isso independe da versão do VB, pois não é o VB quem tem os drivers de banco de dados: eles são fornecidos separadamente, para serem usados independente da ferramenta ou linguagem usada para desenvolver e programar.

Vocês devem se certificar de que as máquinas onde suas aplicações vão ser executadas tem todos os drivers e bibliotecas do banco de dados que vocês vão manipular (na dúvida, é sempre bom reinstalar esses drivers).

É provável que seja pela falta desses drivers que a conexão não esteja funcionando.

No caso do Access (e mesmo de outros bds) deve-se instalar o MDAC (Microsoft Data Access Components) na máquina onde a aplicação vai ser executada. É o MDAC que contém os drivers e bibliotecas necessárias para fazer com que essa conexão funcione e que permitem que vocês possam programá-las.

Sugiro que instale o MDAC 2.5, que foi a última versão que saiu com o Microsoft Jet (biblioteca SQL para Access) embutido. Depois da versão 2.5, você só encontra o MDAC separado do Jet (em pacotes diferentes) e isso não tem funcionado muito bem (pelo menos das vezes que eu tentei).

Se a aplicação for rodar em Windows Me, NT, 2000 ou XP, pode instalar apenas o MDAC.

Porém, se acaso a aplicação for rodar em Windows 95 ou 98, é preciso instalar antes do MDAC um outro pacote preliminar, que é o DCOM (Distributed COM Components). Essas duas versões do Windows (95 e 98) não tem instalado por padrão o pacote DCOM, daí a necessidade de instalar separadamente.

O DCOM tem uma versão para Windows 95 (arquivo "dcom95.exe") e outra para Windows98 (arquivo "dcom98.exe"), portanto é bom ter cuidado na hora de instalar. Você encontra esses arquivos neste link

Resumindo: instalem os drivers e os problemas acabam...

Qualquer dúvida, estamos aí...

B)

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Postado Originalmente por wrath@18 mar 2004, 10:12

Quanto ao programa, surgiu mais uma dúvida! Como fazer com que o campo CPF funcione nesta formatação?

Para formatar, use a função Format$ no evento 'LostFocus' do controle Text, assim:

txtCpf = Format$(txtCpf, "@@@.@@@.@@@-@@")

Opcionalmente, você pode usar o controle "MaskedEditBox", no qual você pode pré-definir este e outros formatos (impedindo que o usuário digite errado), mas eu particularmente não sou muito fã desse controle, pra mim ele mais atrapalha do que ajuda.

B)

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!