gpt4 book ai didi

javascript - 如何使用MongoDB Node native列出Mongo Collection的所有索引?

转载 作者:行者123 更新时间:2023-12-03 07:17:31 25 4
gpt4 key购买 nike

好吧,我想知道如何从mongodb的特定集合中获取所有索引。
我尝试使用listIndexesindexesindexInformation,但是这些方法只给我空值(数组和对象),但是如果我在mongo终端上执行db.getCollection('truck').getIndexes(),这会给我所有索引。

我认为这可能是一个错误,但是我没有找到任何关于此的信息,所以让我展示我的示例和“Robo 3T”的屏幕截图。

await connection.collection('truck').indexes() // returns []
await connection.collection('truck').listIndexes().toArray() // returns []
await connection.collection('truck').indexInformation() // returns {}

enter image description here

所以...这里发生了什么事?为什么这些方法效果不佳?

感谢:D

P.S:我使用的是 mongodb版本 3.5.5: https://github.com/mongodb/node-mongodb-native

最佳答案

看起来在代码await connection.collection('truck').indexes()中,您还需要指定数据库。尚不清楚connection是什么。

以下脚本将在指定的数据库和集合中打印索引。

const MongoClient = require('mongodb').MongoClient;

( async function() {
const client = new MongoClient('mongodb://localhost:27017', { useNewUrlParser: true, useUnifiedTopology: true } );
try {
await client.connect();
const coll = client.db('test').collection('books');
const indxs = await coll.indexes();
console.log(indxs); // prints all the indexes
} catch (err) {
console.log(err.stack);
}
client.close();
)();

关于javascript - 如何使用MongoDB Node native列出Mongo Collection的所有索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60731804/

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