我试图删除
sql server management studio 2012
中的一行,但出现错误:
没有删除任何行
尝试删除第 2 行时出现问题错误源: Microsoft.SqlServer.Management.DataTools 错误消息:行 更新或删除的值不会使该行唯一,或者它们 更改多行(2行)
有没有一种方法可以在不输入任何查询的情况下修复错误?
谢谢@Hani
我遇到了同样的问题(实际上是一个带有唯一ID的表,但有些行意外重复,包括“唯一ID”,所以我无法删除重复的行),你的建议帮助我从SQL Server管理中解决了这个问题图形用户界面。
SELECT TOP(200)...
{剪切我由过滤器创建的条件}
改为阅读:
SELECT TOP(1)...
{剪切我由过滤器创建的条件}
感谢您的帮助,这被证明是 GUI 和 SQL 代码的完美结合,让我能够安全高效地完成工作。
我希望这可以帮助处于类似情况的其他人。
您的表中没有主唯一键。
SQL Server 无法删除您的行,因为没有任何东西可以将其与其他行区分开来。
解决方案是向表中添加唯一的主键。无论如何,不建议没有。一个简单的
integer
和 autoincrement
应该对您来说是透明的。
如果您尝试删除表中没有唯一标识符的重复行之一,您可以尝试类似的操作。
DELETE TOP(1) FROM theTable WHERE condition1, condition2,...
在应用删除查询之前,您应该首先使用 SELECT 语句对其进行测试。
我还发现,如果您使用
text
或 ntext
列,您会收到他的错误。 我将该列转换为 NVARCHAR(MAX),此后没有出现任何问题。
机器人已删除违规行为,并且该违规行为已从帐户中删除。请删除错误。错误号 id:740119 并@纠正删除页面错误 610 上的路径