none
Código SQL RRS feed

  • Pergunta

  • qual o problema com esse código?

    NpgsqlCommand sql = new NpgsqlCommand("Select * from Usuario where login = (?) and senha = (?);", conexao);
    sql.Parameters.Add("@login", NpgsqlDbType.Varchar).Value = usuario;
    sql.Parameters.Add("@senha", NpgsqlDbType.Varchar).Value = senha;

    ele ta dando a seguinte msg:

    {"ERROR: 42601: syntax error at or near \")\""} 


    BrunoAlisson
    segunda-feira, 2 de fevereiro de 2009 16:11

Respostas

  • Olá Bruno,

    Creio que o seu provider não aceita parâmetros anônimos... Você já tentou com parâmetros nomeados?


     
     NpgsqlCommand sql = new NpgsqlCommand("Select * from Usuario where login = @login and senha = @senha", conexao); 
     


    Abraços,
    Caio Proiete


    Caio Proiete
    http://www.caioproiete.com
    • Marcado como Resposta BrunoAlisson terça-feira, 3 de fevereiro de 2009 02:23
    segunda-feira, 2 de fevereiro de 2009 18:58

Todas as Respostas

  • Olá Bruno,

    Parece que o problema são esses parênteses que você utilizou para envolver os parâmetros: (?).
    Creio que seja apenas uma questão de remover os parênteses:

    Select * from Usuario where login = ? and senha = ?;

    ou então colocá-los corretamente (se você fizer questão):

    Select * from Usuario where (login = ?) and (senha = ?);


    Abraços,
    Caio Proiete


    Caio Proiete
    http://www.caioproiete.com
    segunda-feira, 2 de fevereiro de 2009 17:19
  • kra continua com o msm erro
    mas acho q n tah reconhecendo eh a "?" pq qndo tira os parenteses o erro passa pra

    {"ERROR: 42601: syntax error at or near \"and\""}


    BrunoAlisson
    segunda-feira, 2 de fevereiro de 2009 18:41
  • Olá Bruno,

    Creio que o seu provider não aceita parâmetros anônimos... Você já tentou com parâmetros nomeados?


     
     NpgsqlCommand sql = new NpgsqlCommand("Select * from Usuario where login = @login and senha = @senha", conexao); 
     


    Abraços,
    Caio Proiete


    Caio Proiete
    http://www.caioproiete.com
    • Marcado como Resposta BrunoAlisson terça-feira, 3 de fevereiro de 2009 02:23
    segunda-feira, 2 de fevereiro de 2009 18:58
  • Olá, tente assim:
    NpgsqlCommand sql = new NpgsqlCommand("Select * from Usuario where login = :usuario and senha = :senha;", conexao);
    sql.Parameters.Add(":usuario"", NpgsqlDbType.Varchar).Value = usuario;
    sql.Parameters.Add(":senha", NpgsqlDbType.Varchar).Value = senha;

    José Antunes

    J. Antunes
    segunda-feira, 2 de fevereiro de 2009 19:49