gpt4 book ai didi

c# - 哪个数据集行违反了数据库唯一约束?

转载 作者:行者123 更新时间:2023-11-30 22:48:46 25 4
gpt4 key购买 nike

我正在使用 c# 2005 和 Sql Server 2000 编写应用程序。

我有一个表,有一个唯一的约束,在我关心的情况下,我有两个用户使用一个表单,该表单将(当按下保存时)更新表。

如果表是,比方说,NAMES( ID int, NAME varchar(20)) 并且唯一约束在 NAME 上,如果要保存的第一个用户添加了 NAME 'David' 和 'John' 那么就可以了。如果第二个用户尝试使用包含名称为“John”和“Susan”的行的 DataTable 进行更新,则会抛出 SqlException。但是,异常中没有任何内容告诉我 DataTable 中的哪一行违反了约束。

除了从数据库中获取唯一约束组成的详细信息然后使用此信息检查我的 DataTable 中的每一行以查看该行是否违反了约束之外,还有其他方法可以确定哪一行有问题吗?

最佳答案

你应该使用 DataTable.GetErrors获取有错误的 DataRow 数组。

对于数组中的每个 DataRow,您应该检查 DataRow.RowError哪些列有错误 DataRow.GetColumnsInError .

关于c# - 哪个数据集行违反了数据库唯一约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1509635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com