- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有两个 SQL 表,每个表都有一个由三个不同的整数字段组成的复合键。我添加了如下代码来向 Table1 添加一条记录。
try
{
Table1 newRow = new Table1
{
DomainID = domainID,
ConfigurationID = configID,
ReasonID = reasonID
};
data.Table1.InsertOnSubmit(newRow);
data.SubmitChanges();
}
catch(DuplicateKeyException)
{
// Message to user about no duplicates allowed.
}
这完全符合我的计划,如果用户试图添加重复的行,我会捕获异常,我可以向他们显示一条消息等。一切都很好。但是,我要插入到 Table2 的代码(这几乎是相同的,但是在使用不同 DataContext 的不同页面上),
try
{
Table2 newRow = new Table2
{
DomainID = domainID,
ConfigurationID = configID,
DirectionID = directionID
};
data.Table2.InsertOnSubmit(newRow);
data.SubmitChanges();
}
catch(DuplicateKeyException)
{
// Message to user about no duplicates allowed.
}
不抛出 DuplicateKeyException 而是抛出 SqlException。没什么大不了的,因为我仍然可以测试
e.Number = 2627
在捕获的 SqlException 上,但我只是对为什么它的工作方式不同感到困惑!?
最佳答案
肯定是你表2的定义有问题,具体是主键列就可以了。也许它有一个 Unique Constraint这就是它抛出异常的原因,但它肯定不是它的主键。
关于c# - 在某些情况下不会抛出 DuplicateKeyException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12409235/
我有以下代码将新对象添加到数据库中。首先,它从数据库中获取另一个对象并添加到最终对象中。 我的代码几行 ClassC c = ClassC.findByName(cName)
我正在研究 db2。我有一张表,其中包含一些数据: Data | Value | Lang 对该表的数据列添加了唯一约束。但是,现在应用程序可以包含同一日期的许多行。因此,我删除了约束,但是,在重组表
我有两个 SQL 表,每个表都有一个由三个不同的整数字段组成的复合键。我添加了如下代码来向 Table1 添加一条记录。 try { Table1 newRow = new Table1
我正在使用 JooQ 在 Aurora MySQL 上执行 CRUD 操作。 我有以下情况: 如果由于重复键异常导致插入失败,则再次重试相同的操作,否则忽略该异常。 如果插入失败,则在满足条件的情况下
我有两个对象:User 和 Resume。 Resume 有一个 User user 字段。在我的代码中,我首先得到一个 user 对象并对其进行一些更改。如果 Resume.findByUser(u
当我尝试使用方法 [1] 更新插入(增量或插入)文档时,我确实会不时收到此错误 [2]。 [1] public NGram save(final NGram ngram) { Criteria
简而言之:与许多教程不同,对象“logger”无法被识别。 问题本身并不是很严重,我可以轻松解决它。然而,看到这个“记录器”在我的 intellIj 编辑器中保持红色状态是非常令人沮丧的。我正在浏览文
下面列出的代码尝试更新数据库中的一行,但抛出异常: System.Data.Linq.DuplicateKeyException: Cannot add an entity with a key th
我在处理 DataAccessException 时遇到了麻烦。 当违反唯一键约束时,我得到了 JpaSystemException,而不是 DuplicateKeyException! 我发现一些线
下面是我在线程 Spring 执行器下的类(class)。根据源/服务的类型 TAXP、TAXS、TAXT 方法被调用。 逻辑是如果“taxInfo.getGroupingId()”已经存在于主税表中
我有大量的数据希望使用GORM加载到数据库中。 class DbLoadingService { static transactional = false // these ar
我正在为一些关键业务操作编写审计服务。该服务正在使用 IoC 模式实现: public interface IAuditWriter { void WriteAction(int key, s
是否有类似 DuplicateKeyException 的东西适用于 javax.persistence.*? 我发现这个异常仅适用于 ejb 库:DuplicateKeyException 谢谢。
我在使用 Oracle 数据库的 WebLogic 上部署了一个相对简单的 Web 应用程序。当我完成应用程序的开发并准备将其部署到生产 WebLogic 实例所在的实际 Linux 服务器时,应用程
我正在使用 Spring Boot 和 spring data MongoDB(+mongodb-reactive,但我想这对于这个问题并不重要)。对于一些自动生成,我使用 Lombok。 我有一个U
插入数据的方法 public String home() { try { MongoData data=new MongoData(); data.setD
我正在使用 SpringBoot 和 jdbc 模板,并在获取一些重复数据时执行批量插入。我想忽略重复的行,系统应该继续插入,但我收到异常并且插入被回滚。我怎样才能继续插入数据并保留重复的行。 使用下
我有一个带有 @Document(collection = "excursionAttendees") 注释的 POJO ( ExcursionAttendee ) 注释,并且有一个没有任何自定义方法
正如标题中提到的,当同一个客户端同时查询 token 端点时(两个进程同时为同一个客户端请求 token ),我遇到了这个问题。 身份验证服务器日志中的消息如下所示: 2016-12-05 19:08
我正在使用 Spring-Data/MongoDB 并在保存/插入时正确捕获重复键。 例如,假设我有一个用户被保存到一个集合中。 User 对象用两个 @Indexed(unique=true) (两
我是一名优秀的程序员,十分优秀!