- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在将 dtSearch 与 SQL 数据库结合使用,并希望维护一个包含所有 DocId 及其相关文件名的表。从那里,我将添加一个包含我的外键的列,以允许我结合文本和数据库搜索。
我有代码可以简单地返回索引中的所有记录并将它们一一添加到数据库中。然而,这需要永远,并且没有解决如何在将新记录添加到索引时简单地附加新记录的问题。但以防万一它有帮助:
MyDatabaseContext db = new StateScapeEntities();
IndexJob ij = new dtSearch.Engine.IndexJob();
ij.IndexPath = @"d:\myindex";
IndexInfo indexInfo = dtSearch.Engine.IndexJob.GetIndexInfo(@"d:\myindex");
bool jobDone = ij.Execute();
SearchResults sr = new SearchResults();
uint n = indexInfo.DocCount;
for (int i = 1; i <= n; i++)
{
sr.AddDoc(ij.IndexPath, i, null);
}
for (int i = 1; i <= n; i++)
{
sr.GetNthDoc(i - 1);
//IndexDocument is defined elsewhere
IndexDocument id = new IndexDocument();
id.DocId = sr.CurrentItem.DocId;
id.FilePath = sr.CurrentItem.Filename;
if (id.FilePath != null)
{
db.IndexDocuments.Add(id);
db.SaveChanges();
}
}
最佳答案
要将 DocId 保留在索引中,您必须在 IndexJob 中使用标志 dtsIndexKeepExistingDocIds
DocID改变时也可以看dtSearch Text Retrieval Engine Programmer's Reference
当文档被添加到索引时,它会被分配一个 DocId,并且 DocId 总是按顺序编号。
重新索引文档时,旧的 DocId 将被取消并分配一个新的 DocId。
压缩索引时,索引中的所有 DocId 都会重新编号以删除已取消的 DocId,除非在 IndexJob 中设置了 dtsIndexKeepExistingDocIds 标志。
当一个索引被合并到另一个索引中时,目标索引中的 DocId 永远不会改变。合并到目标索引中的文档都将被分配新的、按顺序编号的 DocId,除非 (a) 在 IndexJob 中设置了 dtsIndexKeepExistingDocIds 标志,并且 (b) 索引具有不重叠的文档 ID 范围。
<关于sql-server - 在 SQL 数据库中从 dtSearch 记录所有 DocId 和文件名的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32344084/
我正在尝试从 Lucene 的文档字段中获取所有名为 Terms 的术语和相关帖子(即如何计算 Lucene 中的术语频率?)。根据documentation有一种方法可以做到这一点: 公共(publ
嗨 如果lucene索引上只发生插入操作(没有删除/更新),那么docID是否真的没有改变?而且它也可靠 如果这是真的,我想用它来增量加载 FieldCache 以降低加载所有文档的开销,最好的解决方
我正在索引 Lucene.Net 数据库中的一行数据。一行相当于文档。 我想用 DocId 更新我的数据库,以便我可以在结果中使用 DocId 以便能够快速检索行。 我目前首先从结果文档中检索 PK,
我有一个简单的查询,可以在帖子相关帖子下推荐用户。 await this.$fireStore.collection('posts') .limit(6).where('tags', 'array-c
请找到我的代码片段。 @RequestMapping(value="/abc" , Method=RequetMethod.GET) public void xxx(@Requestparam
我想知道如何限制一组文档中的查询搜索。到目前为止,我能够将搜索中的文档列表输出到数组(或文本文件)。我想搜索其他术语,但限制此文档列表中的结果。 考虑到我是一个java新手,请在你的回答中进行描述。我
我有这样一段文字: .I 1 .T experimental investigation of the aerodynamics of a wing in a slipstream . .A bren
我正在将 dtSearch 与 SQL 数据库结合使用,并希望维护一个包含所有 DocId 及其相关文件名的表。从那里,我将添加一个包含我的外键的列,以允许我结合文本和数据库搜索。 我有代码可以简单地
我有一个 Lotus 脚本,可以将组织 docID 添加到 contactDoc 并且它工作正常,但我想在 java 脚本中实现此目的 Sub AddContactID(contact As Note
我正在使用新发布的 Lucene 4,并且我了解到与文档术语向量相关的 API 发生了很大变化。我已经通读了迁移文档和相关的各种博客邮件列表帖子,并且我相信我正确使用了 API。但是,我总是从 Ind
我是一名优秀的程序员,十分优秀!