Ir para conteúdo
Fórum Script Brasil
  • 0

Conexao ADO vb 2008


Matheus-vb6

Pergunta

Boa noite pessoal, estou migrando para o 2008 aos poucos, e projetos basicos já fiz... porém na hora de banco de dados complicou....

Estou tentando esse modulo

Module mdlConexao
    Public cn As ADODB.Connection
    'Public rsdados As Recordset
    Public Function abrebanco()
        cn = New ADODB.Connection
        cn.Open("provider=microsoft.jet.oledb.4.0;data source= D:\Matheus\2010\Produções\Programação\VB\Banco de dados - agenda\WindowsApplication1\WindowsApplication1\agenda.mdb;jet oledb:database password=123321")
    End Function

    Public Function fechabanco()
        cn.Close()
    End Function
End Module

Que eu usava no vb6, consegui fazer a conexao pelo "data source",mas ainda sim prefiro trabalhar via código...

Quando tento inserir, ele me retorna isso:

Provedor não encontrado. É possível que ele não esteja instalado corretamente.

Mas já fiz referencia no ado

Abraços

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

não sei exatamente o porque da mensagem do provider, já q ele deve estar realmente instalado.

mas no vb.net, é melhor você usar as bibliotecas do .net mesmo pra conectar no banco de dados. use a OleDbConnection, OleDbDataReader e OleDbCommand, e etc. elas fazem parte, se não me engano da biblioteca System.Data.OleDb.

acho q ate da pra você fazer uma conexao com o ado antigo, mas os objetos não devem ser compativeis com os componentes do .net, por exemplo, com o DataGrid do .net.

Link para o comentário
Compartilhar em outros sites

  • 0

Estava tentando de outras formas aqui, e não consegui....

Pelo data source, ele estava usando essas string:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\agenda.mdb;Jet OLEDB:Database Password=123321

Tentei usar e continua o mesmo erro...

procurei por "System.Data.OleDb." nas references e não encontrei...

Print da tela:

capturarhy.png

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Matheus ! tudo beleza !

Estou também a iniciar na arquitetura .NET...tem suas dificuldades, mas tem muito mais recursos !

Bem tentando responder sua pergunta (já que também sou iniciante), você tem de declarar no inicio do script, acima de "Public Class", onde fica o "Declarations"...lá você põe:

Imports System.Data.OleDb  ' Este faz referência a objeto OLEDB;
Imports System.Data.DataSet ' Este ao DataSet (RecordSet do VB-6 muito melhorado).
Imagem para facilitar: ima01.jpg Quanto a criar uma Função, eu ainda não parei para fazer...mas utilizo este script para me conectar e fazer consultas a dados de um banco sem precisar configurar "Visualmente":
Public Sub PreencherLista()
        '  Estas declarações eu coloco no inicio do script para serem válidas por todo ele;
        Dim Con As OleDbConnection
        Dim Da As OleDbDataAdapter
        Dim Ds As DataSet

        ' Aqui, seto as variáveis (Conexão com ADO);
        Con = New OleDbConnection("Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=" & Application.StartupPath & "\DBase2.sdf") ' Objeto de conexão com Banco de dados em SQLCE (SQL Compact Edition via código)
        Dim SQL As String = "select * from data01" ' Consulta toda tabela;
        Da = New OleDbDataAdapter(SQL, Con) 'Defino o Objeto "Adapatdor";
        Ds = New DataSet ' Variável que armazena todas as informações do Banco (RecordSet do "VB-6" melhorado);

        ' Utilizando o Adaptador preencho o DataSet definindo a tabela ("data01");
        Da.Fill(Ds, "data01")

        ' Como exemplo, vou configurar como preencher um ListBox (LB1) com os dados da tabela "data01":
        Dim Linha As Integer
        For Linha = 0 To Ds.Tables("data01").Rows.Count - 1
            ' Setando preenchimento da minha ListBox:
            LB1.Items.Add(Ds.Tables("data01").Rows(Linha)("ID") & vbTab & (Ds.Tables("data01").Rows(Linha)("Nome") & vbTab & (Ds.Tables("data01").Rows(Linha)("Endereco") & vbTab & (Ds.Tables("data01").Rows(Linha)("Cidade")))))
        Next
    End Sub
' Lembrando que "data01" é o nome de minha "TABELA", e "ID, Nome, Endereco e Cidade", são "COLUNAS" desta tabela. No exemplo, estou a utilizar o SQLCE 3.5... se quiser usar o Access como BD, basta substituir o script do Objeto "Con" por:
Con = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\bd1.mdb")
Onde "bd1.mdb" é o BD... e para utilizar o script "Application.StartupPath" (primo 'rico' do "App.Path" no VB-6), o BD tem de estar na pasta do aplicativo (óbvio <_<), que por padrão fica em:
Meus documentos\Visual Studio 2008\Projects\"Nome do seu Projeto"\"Nome do seu projeto"\bin\Debug

Qualquer coisa, trocamos uns "scripts" pelo Messenger :D

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...