我正在编写一个应用程序,并在 C# 中生成一个随机订单号,在执行插入语句之前,我需要验证没有重复的订单号。这是我的存储过程(它只是一个帮助解决这个问题的测试过程)
CREATE PROCEDURE Test$For$Dupes
(@RandNum int)
AS
declare @myNum int
SELECT OrderNumber, COUNT(*)
FROM [TEST]
WHERE OrderNumber = @RandNum
IF(COUNT(*) < 1)
SET @myNum = 0
IF(COUNT(*) > 1)
SET @myNum = 1
我想要完成的是,如果有重复我需要输出 1 并让我的 c# 代码重新生成一个随机数,如果没有重复,那么我需要输出 0,这样我就可以继续插入我的桌子。
几年前我就知道了这一点,但找不到我的代码,现在我想弄清楚这一点。有任何想法吗?
它还没有工作,我收到了这个错误:
消息 8120,级别 16,状态 1,过程 Test$For$Dupes,第 8
行列 'TEST.OrderNumber' 在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中