0

在创建时我们可以直接传递属性名称,但我如何在现有数据库中创建索引?

const db = {
  patent: {
    disableMeta: true,
    indices: ['update_time'],
    unique: ['app_no'],
  },
};

const _db = new loki(path.resolve(dump, 'db'), {
  autoload: true,
  autoloadCallback() {
    _
      .keys(db)
      .forEach(k => {
        const exists = _db.getCollection(k);

        if (exists === null) db[k] = _db.addCollection(k, db[k]);
        else db[k] = exists;
      });

    main();
  },
  autosave: true,
  autosaveInterval: 1000 * 10,
  verbose: true,
});

这是我update_time在创建时定义为索引的代码,如何在创建后添加一个或多个索引?

4

1 回答 1

0

您将选项传递给该addCollection方法,例如{ indices: ['field1'], unique: ['field2']},检查文档以获取索引选项。Indices 用于二进制搜索索引,用于强制字段的唯一性。

如果您的意思是在创建集合之后,请使用 ensureIndex。

于 2018-08-15T15:30:41.427 回答