Sql 使用更新查询更新数据表
我正在将字符串_nameProcessed从UI传递到我的DAL并更新我的表。现在,当我进行foreach查看时,我无法确定如何将我的列ShipmentProcessedBy更新为_nameProcessed 有人帮忙吗Sql 使用更新查询更新数据表,sql,Sql,我正在将字符串_nameProcessed从UI传递到我的DAL并更新我的表。现在,当我进行foreach查看时,我无法确定如何将我的列ShipmentProcessedBy更新为_nameProcessed 有人帮忙吗 public void SaveNameProcessed(DataTable updatedTable, string _nameProcessed) { foreach (DataRow row in updatedTable.Rows)
public void SaveNameProcessed(DataTable updatedTable, string _nameProcessed)
{
foreach (DataRow row in updatedTable.Rows)
{
SqlCommand cmd2 = new SqlCommand(
@"update dbo.JobStatus
SET ShipmentProcessedBy = ????,
WHERE JobTableId = @JobID ", _mySqlConnec);
//Updated the parameters to the SQL Query!
cmd2.Parameters.Add(new SqlParameter("@ProcessedBy", row["ProcessedBy"].ToString()));
cmd2.Parameters.Add(new SqlParameter("@JobID", row["JobID"].ToString()));
cmd2.Connection = _mySqlConnec;
_mySqlConnec.Open();
cmd2.ExecuteNonQuery();
_mySqlConnec.Close();
}
}
以下是修正后的代码:
public void SaveNameProcessed(DataTable updatedTable, string _nameProcessed)
{
foreach (DataRow row in updatedTable.Rows)
{
SqlCommand cmd2 = new SqlCommand(
@"update dbo.JobStatus
SET ShipmentProcessedBy = ????,
WHERE JobTableId = @JobID ", _mySqlConnec);
//Updated the parameters to the SQL Query!
cmd2.Parameters.Add(new SqlParameter("@ProcessedBy", _nameProcessed));
cmd2.Parameters.Add(new SqlParameter("@JobID", row["JobID"].ToString()));
cmd2.Connection = _mySqlConnec;
_mySqlConnec.Open();
cmd2.ExecuteNonQuery();
_mySqlConnec.Close();
}
}
您已经声明并添加了一个名为
@ProcessedBy
的参数,因此只需在SQL中将其设置为该参数即可
SET ShipmentProcessedBy=@ProcessedBy,
与使用@JobId
您还需要更改此行:
cmd2.Parameters.Add(新的SqlParameter(@ProcessedBy),第[“ProcessedBy”].ToString()行)代码>
到
cmd2.Parameters.Add(新的SqlParameter(“@ProcessedBy”,_nameProcessed))代码>我根据您所说的更正了上述代码。我还是不明白,更新声明中应该包含什么?你仍然需要按照我说的去做。更换????变量名为@ProcessedBy