ERRO NO SQL

ISRAELRUAS 29/03/2013 18:00:43
#421244
[ô]ABRE A TABELA E LOCALIZA, SE POSSÍVEL, O USUÁRIO A SER LOGADO
Sql = [Ô]SELECT * FROM Login WHERE Usuario = [ô][Ô] + txtLogin.Text + [Ô][ô]AND Senha = [ô][Ô] + txtSenha.Text + [Ô][ô][Ô]
tabelaLogin.Open(Sql, conexaoLogin)

If Not (tabelaLogin.EOF) Then
usuario = tabelaLogin.Fields([Ô]Usuario[Ô]).Value
senha = tabelaLogin.Fields([Ô]Senha[Ô]).Value

If ((usuario = txtLogin.Text) And (senha = txtSenha.Text)) Then
MsgBox([Ô]Logado[Ô])
MDIParent1.Show()
conexaoLogin = Nothing
Me.Visible = False
Else
MsgBox([Ô]Usuário e senha não conferem com nosso cadastro[Ô])

End If

Else
MsgBox([Ô]Digite um login e uma senha válidos![Ô], vbCritical, [Ô]Login[Ô])
End If
End If
End If
End Sub
End Class


na linha 1 //ESTA DANDO O SEGUINTE ERRO [Ô]Erro 2 [ô]System.Data.Sql[ô] é um namespace e não pode ser usado como uma expressão[Ô]

NÃO SEI MAIS OQ FAZER!
OMAR2011 29/03/2013 18:24:44
#421245
Tem que fazer referência Ado no seu projeto.
Mostre desde a declarações até onde você
postou.Ai o pessoal vai te ajudar.
ISRAELRUAS 29/03/2013 18:37:37
#421246
Essa é a minha codificação no mdulo



[ô]IMPORTANTO AS CLASSES PARA HABILIATAR CONEXÃO COM BANCO DE DADOS

Imports MySql.Data.MySqlClient

Module Module1
[ô]CRIANDO UM OBJETO DO TIPO ADODB.Connection(ACESSAR O BANCO DE DADOS)
[ô]CRIANDO UM OBJETO DO TIPO ADODB.Recordest(ACESSAR UMA TABELA DO BD)

Public conexaoLogin As New ADODB.Connection
Public tabelaLogin As New ADODB.Recordset

Public conexaoSistema As New ADODB.Connection
Public tabelaSistema As New ADODB.Recordset

Public Sub ConectaLogin() [ô]SUB-ROTINA QUE SERVIRÁ PARA ABRIR O BD LoginProjetoVB
FechaLogin()
conexaoLogin = New ADODB.Connection
conexaoLogin.Open([Ô]Driver={MySQL ODBC 5.2w Driver};[Ô] _
& [Ô]SERVER=localhost;[Ô] & [Ô] DATABASE=Login;[Ô] _
& [Ô]UID=root;PWD=etec;OPTION=16427;[Ô])


End Sub

Public Sub ConectaSistema()
[ô] FechaSistema()
conexaoSistema = New ADODB.Connection

conexaoSistema.Open([Ô]Driver={MySQL ODBC 5.2w Driver};[Ô] _
& [Ô]SERVER=localhost;[Ô] & [Ô] DATABASE=Legal;[Ô] _
& [Ô]UID=root;PWD=etec;OPTION=16427;[Ô])

End Sub

[ô]SUB-ROTINA QUE SERVIRÁ FECHAR O BD LoginProjetoVB

Public Sub FechaLogin()
On Error Resume Next

conexaoLogin.Close()
End Sub
End Module


[ô] E AQUI é A MINHA CODIFICAÇÃO NO FORM LOGIN

[ô]CODIFICAÇÃO DO BOTÃO ENTRAR

Private Sub cmdLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmdLogin.Click


Call Logar()
End Sub

Private Sub Logar()

If (txtLogin.Text = [Ô][Ô]) Then
MsgBox([Ô]Digite o nome do usuário![Ô]) [ô]VERIFICAR SE A CAIXA DE TEXTO LOGIN ESTA EM BRANCO
Else
If (txtSenha.Text = [Ô][Ô]) Then [ô]VERIFICAR SE A CAIXA DE TEXTO SENHA ESTA EM BRANCO
MsgBox([Ô]Digite a senha do usuário[Ô])
Else

ConectaLogin() [ô]ABRE O BANCO DE DADOS

tabelaLogin = New ADODB.Recordset
Dim usuario, senha As String

[ô]ABRE A TABELA E LOCALIZA, SE POSSÍVEL, O USUÁRIO A SER LOGADO
Sql = [Ô]SELECT * FROM Login WHERE Usuario = [ô][Ô] + txtLogin.Text + [Ô][ô]AND Senha = [ô][Ô] + txtSenha.Text + [Ô][ô][Ô]
tabelaLogin.Open(Sql, conexaoLogin)

If Not (tabelaLogin.EOF) Then
usuario = tabelaLogin.Fields([Ô]Usuario[Ô]).Value
senha = tabelaLogin.Fields([Ô]Senha[Ô]).Value

If ((usuario = txtLogin.Text) And (senha = txtSenha.Text)) Then
MsgBox([Ô]Logado[Ô])
MDIParent1.Show()
conexaoLogin = Nothing
Me.Visible = False
Else
MsgBox([Ô]Usuário e senha não conferem com nosso cadastro[Ô])

End If

Else
MsgBox([Ô]Digite um login e uma senha válidos![Ô], vbCritical, [Ô]Login[Ô])
End If
End If
End If
End Sub
End Class


[ô]AS REFERENCIAS QUE EU SELECIONEI FOI :

adodb .NET 7.0.3300.0
MySql.Data

OMAR2011 29/03/2013 19:06:14
#421248
Para fazer a referência,vá
em,
Projet,Add reference,vai abri uma janela,
click em COM selecione,
Microsof ActiveX Data Objects 2.7 Library
ou
Microsof ActiveX Data Objects 2.8 Library
ou superior.

Igual no vb6.
OCELOT 29/03/2013 20:23:40
#421253
Se você está usando o VB.Net deveria usar o conector do MySQL e não o ADO, pelo seu código você está fazendo da forma que era no VB6, usando o ADODB.*, apesar de você ter adicionado a referencia do conector nativo para .Net do MySQL e ter colocado o imports MySql.Data.MySqlClient você não usa nada dele
ISRAELRUAS 29/03/2013 21:03:02
#421254
Desculpem pessoa eu escolhi por engano vb.NET o certo é VB10l
OCELOT 29/03/2013 21:17:05
#421256
Qualquer Visual Basic depois do 6 é VB.Net, o primeiro foi com o VS.Net 2002, depois teve 2003, 2005, 2008, 2010 e agora o 2012, que respectivamente correspondem ao VB 7, 7.1, 8, 9, 10 e 11, mas todos são basicamente VB.Net, cada um rodando em cima de uma versão diferente do .net framerork
ISRAELRUAS 30/03/2013 11:12:09
#421268
certo! mas e agora o que qui eu faço, já que eu não tenho mais informações e nem recursos?
FELLIPEASSIS 03/04/2013 21:12:26
#421479
cara sua app está vulnerável a sql injection, qualquer um pode penetras sua app sem ser cadastrado por exemplo
login : admin (exemplo ou qualquer coisa(123))
senha: [ô]or[ô]1[ô]=[ô]1
login:1 union select * from usuarios
senha:
p/ seber o nome da tabela
login: [ô] having 1=1--
senha:
aq ele apaga a tabela usuarios
login: [ô] ; drop table usuarios--
senha:
testa e vc verá a vulnerabilidade do app
use parâmetros na app
ex: SELECT * FROM Login WHERE Usuario =@usuario AND Senha =@senha[Ô]
ai vc passa as variaveis com @
no vb.net é assim comand.parameter.addwithvalues([Ô]@usuario[Ô],txtusuario.text)
e procedures no banco de dados ao menos que vc esteja usando ms acess (que na minha opniao nao é considerado banco de dados e sim alocamento de dados simples)
Faça seu login para responder