SQL Server不会删除记录

时间:2011-07-04 11:03:23

标签: sql sql-server-2005

我是MSSQL Server的新手并且对此没有任何了解。

我有以下问题。

我在SQL Server 2005中添加了9条与每张图像显示的值相同的记录。

我没有给表任何主键。

现在,当我选择一条记录或多条记录并点击删除键时,它不会从表中删除记录,而是会给我错误。

enter image description here

3 个答案:

答案 0 :(得分:6)

您需要添加主键以唯一标识每条记录,否则SQL服务器无法区分记录,因此无法知道要删除哪一条,从而导致错误。

答案 1 :(得分:2)

那是因为你没有任何主键,服务器不知道要删除哪一行。清除表(DELETE * FROM dbo.Patient)并创建新的Id列作为主键。

答案 2 :(得分:2)

在MSSQL中,您需要拥有该表的主键。这将唯一标识该特定表的每一行。

例如在Oracle中,您不需要它,因为您可以使用ROWID(意味着每个表中的每一行在数据库中都有唯一的ID)。一旦你知道了这个ID,甲骨文肯定知道它是从哪个表开始的。

所以现在你可以在表格中添加一个主键,你可以让它自动增加 - 确保唯一性。