- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在使用以下代码通过 C# 驱动程序进行批量插入。我有一个唯一索引,如果我尝试插入一条不唯一的记录,我希望它静默失败。
即使我设置了 InsertFlags.ContinueOnError
,我仍然在调用 InsertBatch
时遇到错误。如果我吞下如下所示的错误,一切正常。但这肯定感觉不对。
var mio = new MongoInsertOptions {Flags = InsertFlags.ContinueOnError};
// newImages is a list of POCO objects
try
{
_db.GetCollection("Images").InsertBatch(newImages, mio);
}
catch (WriteConcernException)
{
}
最佳答案
您使用的是 1.8 版的 csharp Mongo 驱动程序吗?
如果是这样,请尝试升级到版本 1.8.1,其中包含对以下两个问题的修复:
InsertBatch fails when large batch has to be split into smaller sub batches
InsertBatch throws duplicate key exception with too much data...
因此您的插入可能会成功,但由于上述错误,驱动程序仍然在批量插入操作上抛出异常。
并且此异常并非源自数据库本身,这解释了为什么插入成功但之后您仍然需要捕获异常 - 即数据库实际上尊重您的 ContinueOnError 标志,但驱动程序无论如何都会在之后抛出异常。
关于c# - 使用 ContinueOnError 批量插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19644901/
我正在尝试保留一个具有唯一键的集合。要插入的数据来自各个分布式位置(尽管各个文档是不可变的),并且可能包含重复项。我希望简单地插入记录并使用 continueOnError 抑制重复键错误,但仍然抛出
我正在使用以下代码通过 C# 驱动程序进行批量插入。我有一个唯一索引,如果我尝试插入一条不唯一的记录,我希望它静默失败。 即使我设置了 InsertFlags.ContinueOnError,我仍然在
我在 Spring Boot 和 Spring Data 中使用两个数据源。有一个选项可以通过属性文件 spring.datasource.continueOnError=true 设置属性 我的要求
我正在尝试使用连接器 mysql-connector-java-5.1.6-bin.jar 更新 MySql 数据库中的一批记录。根据这个answer ,驱动程序可能会在一条记录失败的情况下继续,或者
我正在使用 运行 MSBuild 任务ContinueOnError =真: 所以我的构建总是成功。 有没有办法找出是否发生任何错误? 我找不到包含此信息的 MSBuild 任务的任何输出。 我知道
这适用于我的本地: db.collection('test').insert(docsArray, {ordered: false}); Mongo v2.6.10 NodeJS Driver v2.
我是一名优秀的程序员,十分优秀!