varias - where con 3 condiciones sql
Cómo agregar más uno(+1) a una columna de SQL Server en una consulta SQL (3)
La pregunta simple es, ¿cómo se incrementa en 1 el valor de un campo en MS Query? Estoy intentando agregar 1 (+1) a una columna int
en mi base de datos de SQL Server utilizando un método parametrizado. Similar a una operación i ++ en una variable. Estoy usando el siguiente método:
public static int UpdateFieldCount(int parameterId)
{
// variable to hold the number of rows updated or the success of the query
int updatesuccess = 0;
// build your connection string
string connectionstring = WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionstring);
// build your SQL Query statement
string SQLString = "UPDATE TableName SET TableField + 1 WHERE SomeFilterField = @ParameterID";
SqlCommand sqlcmd = new SqlCommand(SQLString, conn);
sqlcmd.Parameters.AddWithValue("@ParameterID", parameterID);
conn.Open();
updatesuccess = sqlcmd.ExecuteNonQuery();
conn.Close();
return updatesuccess;
}
Este método arroja el siguiente error relacionado con el signo más (+) en mi consulta SQL:
Sintaxis incorrecta cerca de ''+''.
Descripción: se produjo una excepción no controlada durante la ejecución de la solicitud web actual. Revise el seguimiento de la pila para obtener más información sobre el error y dónde se originó en el código.
Detalles de la excepción: System.Data.SqlClient.SqlException: Sintaxis incorrecta cerca de ''+''.
Error de fuente:
Línea 315:
Línea 316: conn.Open ();
Línea 317: updatesuccess = sqlcmd.ExecuteNonQuery ();
Línea 318: conn.Close ();
Línea 319:Archivo fuente: c: / testdevlocation / appname / App_Code / ClassFileName.cs Línea: 317
Algún consejo sobre esto?
Necesita un valor y un campo para asignarlo. El valor es TableField + 1
, por lo que la tarea es:
SET TableField = TableField + 1
seleccione col1, col2, case cuando col1 = ''1'' luego col1 + 1 else ''0'' end como newvalue from table_name
"UPDATE TableName SET TableField = TableField + 1 WHERE SomeFilterField = @ParameterID"