c# /SQL检查重复条目
本文关键字:检查 SQL | 更新日期: 2023-09-27 18:14:36
我正在做一个项目,但是我遇到了瓶颈。我的代码将带有类型的日期添加到数据库中,但是当代码中已经有类似的条目时,我需要创建一个错误。但是,我不能让循环检查重复项,而是添加重复项!我不太擅长循环,所以我在这方面有点卡住了。任何帮助检查重复条目,并阻止它创建太多将是一个很大的帮助!修改了文本区域内的代码,使其变量名称不完全相同。
下面是我的代码:-if (DT != null && DT.Length > 0 || DF != null && DF.Length > 0)
{
for (int t = 0; t < Type.Length; t++)
{
DateTime checkDate;
if (Type.IsSelectionValid(8, out typeError) && DateTime.TryParse(DF, out typeError) && DateTime.TryParse(DT, out checkDate))
{
TypeValid = true;
error.Error = false;
}
else
{
error.Errors = "Type-Invalid";
absenceTypeValid = false;
break;
}
}
else
{
error.Errors = "Type-Duplicate";
TypeValid = false;
break;
}
}
}
我'相当'肯定你是在想尽办法使问题变得比这里更困难,但我不能肯定,因为我不完全确定这是在做什么。
但是这里有需要满足的条件来进入你的类型重复错误行:
1) DT或DF必须不为空才能通过第一个if语句
2) IsSelectionValid()必须返回false,或者DT或DF必须是无效的DateTime。
这些东西都不构成重复。
让我试着解释一下我在这里看到的:
我首先看到的变量是DT, DF。我能看到这些是日期,但我只知道这些。我看到了"类型",我甚至比DT和DF更不了解它。我看到你在为Type做一个循环。长度迭代次数…但如果我不知道Type是什么,这对我来说意味着什么呢?
如果你有评论解释事情是什么,我"可能"可以帮助你,但是这里真的没有足够的信息来了解这里发生了什么。
如果你只是想知道如何避免在数据库中添加重复项,那么我建议在数据库中的列中添加约束或索引,然后你就可以捕获当你试图插入重复项并以这种方式处理它时抛出的异常。或者,在插入语句中说明它。