Usuário com melhor resposta
Código SQL

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
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
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 -
-
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
-
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