Ir para conteúdo

POWERED BY:

Arquivado

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

W1gl07

MySQL + VB + MDB

Recommended Posts

Pessoal eu achei algo parecido aqui no forum mas não tinha resposta. Então decidi postar de novo.

Estou começando no vb pessoal, gostaria de uma ajuda.

 

O erro é o seguinte:

 

Run-time error '3709':

A operação solicitada requer um obijeto OLE DB Session, para o qual não há suporte do provedor atual.

 

Dim cnnComando As New ADODB.Command

Dim rsSelecao As New ADODB.Recordset

'On Error GoTo errSelecao

If Val(txtCodigo.Text) = 0 Then

MsgBox "Código de usuário não é válido." & vbCrLf & "Por favor verifique.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro de Código"

txtCodigo.SetFocus

Exit Sub

End If

Screen.MousePointer = vbHourglass

With cnnComando

.ActiveConnection = cnnCadastro <<<<<O ERRO ACUSA ESTA LINHA AQUI!!!!

.CommandType = adCmdText

.CommandText = "SELECT * FROM usuario WHERE codigo = " & txtCodigo.Text & ";"

Set rsSelecao = .Execute

End With

 

A conexão é a seguinte:

 

On Error GoTo errConexao

cnnCadastro.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\data\cadastro.mdb;"

cnnCadastro.Open

Unload Me

frmprincipal.Show

Exit Sub

 

errConexao:

With Err

If .Number <> 0 Then

MsgBox "Houve um erro na conexão com o banco de dados." & vbCrLf & "O sistema será encerrado.", vbCritical + vbOKOnly + vbApplicationModal, "Erro na conexão"

.Number = 0

Set cnnCadastro = Nothing

End

End If

End With

 

Se tiver que colocar mais alguma coisa é só pedir.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara olha só, vamos fazer de um jeito mais prático esse acesso aos dados, evitando que você cria duas conexão com o BD:

Dim rsSelecao As New ADODB.Recordsetset rsSelecao = cnnCadastro.execute("SELECT * FROM usuario WHERE codigo = " & txtCodigo.Text & ";")

Tenta fazer dessa maneira retirando esse objeto command.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara olha só, vamos fazer de um jeito mais prático esse acesso aos dados, evitando que você cria duas conexão com o BD:

Dim rsSelecao As New ADODB.Recordsetset rsSelecao = cnnCadastro.execute("SELECT * FROM usuario WHERE codigo = " & txtCodigo.Text & ";")
Tenta fazer dessa maneira retirando esse objeto command.
Ele mostra outro erro dizendo que não pode executar com um objeto fechado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.