Hola a tod@s:
He implementado un acceso a datos y me surge el siguiente problema,
tengo el comande de selección:
SELECT Id FROM Software WHERE Id=?
Ahora tengo que ponerle ese parametro que le falta
parametro = new SqlParameter("@" + nombre,dbType);
comandoSelect.Parameters.Add(parametro);
parametro.Value = 12;
El parametro queda con las siguientes propiedades:
ParameterName = @Id
Value = 12
DbType = Int32
Entiendo que ahora, automaticamente se deberia poner el 12 en el lugar
de ? en la expresion:
SELECT Id FROM Software WHERE Id=?
Pero al ejecutar la sentencia me dice:
System.Data.SqlClient.SqlException: Incorrect syntax near '?'.
Donde puede estar el error?
El uso de @ antes del nombre del parametro, es obligatorio?
Si examino la propiedad comandoSelect.CommandText del SqlDbDataParameter
me da:
SELECT Id FROM Software WHERE Id=?
Como si no cogiese el parametro, deberia mostrarme esta propiedad el
comando tal cual se enviará a la base de datos? es decir deberia mostrar
SELECT Id FROM Software WHERE Id ??
Gracias
salu2
Mythox
Leer las respuestas