[英]how to get a count(*) for number of records updated
我正在使用C#更新sql server 2008数据库,如下所示:
foreach (DataRow row in dt.Rows)
{
faxstatus = row.ItemArray[5].ToString().Contains("0000") ? "Faxed" : "Error";
query =
@"update FileLog set
FaxStatus=" + "'" + faxstatus + "'," +
"FaxedPageCount=" + "'" + row.ItemArray[1] + "'," +
"dtFaxed=" + "'" + row.ItemArray[2] + "'," +
"BiscomCode=" + "'" + row.ItemArray[5] + "', " +
"RetryCount=" + "'" + row.ItemArray[4] + "' " +
"where CONVERT(VARCHAR(255), JobID) =" + "'" + row.ItemArray[3] + "'" +
" and FaxStatus<>'Faxed'";
command = new SqlCommand(query, myConnection);
command.ExecuteNonQuery();
NumberOfRecordsUpdated++;
}
我想知道是否可以返回更新了多少条记录?
捕获ExecuteNonQuery
并将其使用为整数。 该方法返回受操作影响的记录数。
请参见SqlCommand.ExecuteNonQuery方法 。
话虽这么说,您对数据源有多信任? 足以赌您的数据完整性吗? 如果我不恳求您探索参数化查询,我将被撤职。 还可以using
语句,以便正确处理您的可弃资源( SqlConnection
, SqlCommand
等)。
引用SqlCommand.ExecuteNonQuery方法 :
返回值
类型:System.Int32
受影响的行数。
将SELECT @@ROWCOUNT
附加到您的语句,并使用ExecuteScalar
而不是ExecuteNoneQuery
。
您可以使用@@ ROWCOUNT 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.