在我的表中,我有很多行数据。 一行有七列值。
是否可以从一行中删除两列的值并休息五次而不进行更改?
我可以使用SQL删除吗?
cmd.CommandText = @"DELETE ImageData,"
+ " ContentType, "
+ " FROM Users "
+ " WHERE UserName = @UserName";
cmd.Parameters.Add(new SqlParameter("@UserName", username));
cmd.Parameters.Add(new SqlParameter("@ImageData", ImageData));
cmd.Parameters.Add(new SqlParameter("@ContentType", ContentType));
在我的代码中,我不能这样删除,是不是错了? 有谁知道如何删除它们?
答案 0 :(得分:2)
我认为你不是DELETE
而是UPDATE。
DELETE
始终删除整行。UPDATE
允许您更改一行中的各个列。<强> codefragment 强>
@"UPDATE Users "
+ "SET ContentType = NULL, "
+ " ImageData = NULL "
+ "WHERE Username = @UserName";
答案 1 :(得分:1)
您需要使用UPDATE
语句。 DELETE
仅用于一次删除整行。
你实际上不能“删除”它们,就好像它是电子表格中的单元格一样。假设列可以为空,您可以将它们设置为NULL
,如下所示。
cmd.CommandText = @"UPDATE ImageData
SET ContentType = NULL, Users = NULL
WHERE UserName = @UserName";
cmd.Parameters.Add(new SqlParameter("@UserName", username));
答案 2 :(得分:1)
你可以更新一行:
UPDATE Users
SET ImageData = NULL, ContentType = NULL
WHERE UserName = @UserName