我是MSSQL Server的新手并且对此没有任何了解。
我有以下问题。
我在SQL Server 2005中添加了9条与每张图像显示的值相同的记录。
我没有给表任何主键。
现在,当我选择一条记录或多条记录并点击删除键时,它不会从表中删除记录,而是会给我错误。
答案 0 :(得分:6)
您需要添加主键以唯一标识每条记录,否则SQL服务器无法区分记录,因此无法知道要删除哪一条,从而导致错误。
答案 1 :(得分:2)
那是因为你没有任何主键,服务器不知道要删除哪一行。清除表(DELETE * FROM dbo.Patient)并创建新的Id列作为主键。
答案 2 :(得分:2)
在MSSQL中,您需要拥有该表的主键。这将唯一标识该特定表的每一行。
例如在Oracle中,您不需要它,因为您可以使用ROWID(意味着每个表中的每一行在数据库中都有唯一的ID)。一旦你知道了这个ID,甲骨文肯定知道它是从哪个表开始的。
所以现在你可以在表格中添加一个主键,你可以让它自动增加 - 确保唯一性。