.NET SQL 通过 Petapoco "Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >="
.NET SQL via Petapoco "Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >="
我发现这个错误很常见,但我没有设法为我的案例找到解决方案,或者我没有设法理解问题的确切原因。
我正在通过 PetaPoco ORM 从 .NET 存储库执行后续查询
var foundEntries = Database.Execute("SELECT COUNT(GroupName)
FROM Group
WHERE GroupName=@0 AND IsDeleted=0"
, groupName);
结果得到:
子查询返回了 1 个以上的值。当子查询跟在 =、!=、<、<=、>、>= 或子查询用作表达式时,这是不允许的。
声明已终止。
奇怪的是我在SQL服务器环境下执行,完全没有问题
欢迎任何帮助。
您应该使用 SingleOrDefault
而不是 Execute
var foundEntries = Database.SingleOrDefault<int>("SELECT COUNT(GroupName)
FROM Group
WHERE GroupName=@0 AND IsDeleted=0"
, groupName);
我发现这个错误很常见,但我没有设法为我的案例找到解决方案,或者我没有设法理解问题的确切原因。
我正在通过 PetaPoco ORM 从 .NET 存储库执行后续查询
var foundEntries = Database.Execute("SELECT COUNT(GroupName)
FROM Group
WHERE GroupName=@0 AND IsDeleted=0"
, groupName);
结果得到:
子查询返回了 1 个以上的值。当子查询跟在 =、!=、<、<=、>、>= 或子查询用作表达式时,这是不允许的。 声明已终止。
奇怪的是我在SQL服务器环境下执行,完全没有问题
欢迎任何帮助。
您应该使用 SingleOrDefault
而不是 Execute
var foundEntries = Database.SingleOrDefault<int>("SELECT COUNT(GroupName)
FROM Group
WHERE GroupName=@0 AND IsDeleted=0"
, groupName);