根据输入检索行

时间:2010-04-04 02:09:19

标签: c# sql sql-server-ce

public void RemoveTask(int index) {
  SQL = "DELETE FROM Task where (...) = " +index;

  dbConn.Open();

  dbCommand = new SqlCeCommand(SQL, dbConn);
  dbCommand.ExecuteNonQuery();

  dbConn.Close();
}

我想要做的是根据指定行号的索引删除记录,但我不知道应该使用什么函数或变量(注意空白),我尝试像rowNum但是它没有工作

任何帮助都将得到应用

1 个答案:

答案 0 :(得分:0)

目前还不完全清楚你要做什么。我认为以下代码就是你所追求的 - 它删除了一个基于主键的行,在这种情况下,主键列的名称是TaskId(但你可以根据你的表列名改变它)。

请注意,它还使用参数化SQL,从而提供更好的性能和安全性。

SQL = "DELETE FROM Task where TaskId = @taskid"; 

dbConn.Open(); 

dbCommand = new SqlCeCommand(SQL, dbConn); 

dbCommand.Parameters.Add("@taskid", SqlDbType.Int);
dbCommand.Parameters["@taskid"].Value = index;

dbCommand.ExecuteNonQuery(); 

dbConn.Close();