Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite pessoal, estou com uma dúvida, estou começando a programar em VB, programo em asp e php há bastante tempo mas em vb não muito, sei que é bem parecido com asp mas tenho duvidas em alguns itens como por exemplo eu tenho em um form dois campos text sei como pegar o valor deles mas para gravar no banco é que esta o problema, em teste tentei gravar em um banco de dados access, vi na internet um codigo que era bem proximo do asp mas tentei e não foi certo, acredito que precise definir conexão ou algo mais, alguem tem como me ajudar ?
Olhem o código que tenho ate agora, quando clica no botão entrar por exemplo:
Private Sub entrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles entrar.Click
If usuario.Text = "administracao" And senha.Text = "teste" Then
Dim sql
Dim oODBCConnection As Odbc.OdbcConnection
Dim sConnString As String = _
"Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=c:\projeto\dados.mdb;" & _
"Uid=Admin;" & _
"Pwd="
oODBCConnection = New Odbc.OdbcConnection(sConnString)
oODBCConnection.Open()
sql = "insert into tb_usuarios(usuario, senha) values(" '" & usuario & "'","'" & senha & "'")"
oODBCConnection.Execute(sql)
Me.Hide()
home.Show()
Else
MsgBox("Acesso negado, verifique seu usuário e senha !")
End If
End Sub
Com este codigo da o seguinte erro:Error 'Execute' is not a member of 'System.Data.Odbc.OdbcConnection'.
No form inicial eu tenho os dois campos ai tentei fazer no banco para testar não vai ser esta a função.
Xavier
Webfuture:
Caro:
Defina 3 variáveis dessa forma:
Public massa As Workspace
Public banco As Database
Public regvenda As Recordset
Depois abra a conexão em algum ponto do programa (1 vez somente)
Set massa = Workspaces(0)
Depois abra o banco de dados propriamente dito (1 vez somente)
Set banco = massa.OpenDatabase(App.Path & "\loja.mdb", False, False, ";pwd=auau")
Se não tiver senha tire o ";pwd=auau"
Para acessar os recordsets ou tabela, use:
Set regvenda = banco.OpenRecordset("loja", dbOpenTable)
onde loja é o nome de uma tabela.
Se desejar abrir com select, use:
Set regvenda= banco.OpenRecordset("select * from cliente" _
& " where ccodicli = '" & icodcli.Text & "'")
Post se deu certo.
Alex.
Olá Alex, antes de ver este post havia feito um teste no VB6 com o seguinte código:
Dim cn As New ADODB.Connection
Dim sql As String
Dim rs As New ADODB.Recordset
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\projeto\dados.mdb;User Id=admin;Password="
cn.Open()
sql = "Select nome, usuario, senha from tb_usuarios"
rs.CursorLocation = adUseClient
rs.Open(sql, cn, adOpenForwardOnly, adlockpessimistic)
If usuario.Text = "administracao" And senha.Text = "102030" Then
If rs.EOF Then
MsgBox("Não há dados para exibir ! ")
Else
nome_conta = rs.Fields("nome")
empresa = rs.Fields("usuario")
email = rs.Fields("senha")
End If
Me.Hide()
home.Show()
Else
MsgBox("Acesso negado, verifique seu usuário e senha !")
End If
Funciona perfeito no VB 6 mas no 2008 ou 2010 usando visual studio olha os erros
Tentei algumas coisas mas não consegui ainda fazer funcionar.
Error 1 Name 'adUseClient' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 68 33 WindowsApplication1
Error 2 Name 'adOpenForwardOnly' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 69 30 WindowsApplication1
Error 3 Name 'adlockpessimistic' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 69 49 WindowsApplication1
Error 4 Name 'nome_conta' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 78 17 WindowsApplication1
Error 5 Name 'empresa' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 79 17 WindowsApplication1
Error 6 Name 'email' is not declared. C:\Projeto\WindowsApplication1\WindowsApplication1\Form1.vb 80 17 WindowsApplication1
Xavier
No .Net tem uma maneira melhor para fazer. ADO.NET
Estou movendo seu tópico para Plataforma .Net - Windows Application.
É vb 6 ou .net?
Abraços...
Olá..
Se intendi direito você quer fazer um sistema de login né?
Segue link de um exemplo de um projeto com Validação de Login, Novo Usuario e Sistema de Permisões
Espero que ajude.
Att Thiago Thomaz.
Realmente a forma como deve fazer é quase idêntica ao que faz em ASP. A única diferença é que em ASP você usa o createobject para criar sua variável de conexão, e no VB você adiciona o componente certo.
Mas olha só, ao invés de trabalhar com o odbc, trabalhe com ADODB. Te dará um suporte bem melhor e vai funcionar esse execute que está dando erro.