无法创建集合?

我在用MongoDB学习node.js。我已经从mongodb.org/downloads安装了完整的包。无法创建集合?

我做了一个Node.js的文件是这样的:

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

var url = "mongo://localhost:27017/myDatabase";

MongoClient.connect(url, function(err, db) {

if (err) throw err;

console.log("Database created!");

db.close();

});

在控制台它表明我,数据库中创建,但是当我打开蒙戈指南针和刷新我没有看到所谓的任何数据库myDatabase

于是,我就接下来的事情就是创建一个集合:

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

var url = "mongo://localhost:27017/myDatabase";

MongoClient.connect(url, function(err, db) {

if(err) throw err;

db.createCollection("customers", function(err, res) {

if(err) throw err;

console.log("Collection created!");

db.close();

});

});

然后我得到这些错误:

Error: Invalid schema, expected `mongodb` or `mongodb+srv` 

at module.exports (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\url_parser.js:15:21)

at connect (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\mongo_client.js:867:3)

at connectOp (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\mongo_client.js:253:3)

at executeOperation (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\utils.js:408:22)

at MongoClient.connect (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\mongo_client.js:244:10)

at Function.MongoClient.connect (D:\Node.js Projects\Node.js MongoDB\node_modules\mongodb\lib\mongo_client.js:472:22)

at Object.<anonymous> (D:\Node.js Projects\Node.js MongoDB\CreateCollection\createcollection.js:4:13)

at Module._compile (module.js:635:30)

at Object.Module._extensions..js (module.js:646:10)

at Module.load (module.js:554:32)

任何人都可以请帮我,为什么我没有看到MYDATABASE在MongoDB Compass UI中,以及为什么当以前的代码表示创建数据库时无法创建集合?

回答:

连接URL应该首先“的mongodb://”


看来你使用MongoDB的库的新版本不教程匹配你以下

var MongoClient = require("mongodb").MongoClient; 

var url = "mongodb://localhost:27017";

var dbName = "myDatabase";

MongoClient.connect(url, function(err, client) {

if (err) throw err;

var db = client.db(dbName);

var collection = db.collection("customers");

// you are using the collection but it won't be created until you insert a

// document or create an index

collection.find({}).toArray((err, docs) => {

if (err) throw err;

console.log(docs);

client.close();

});

});

这是更好地去符合您的库版本official documentation

回答:

您可以猫鼬为CREA婷数据库以及收集和文档

这里例如: -

var mongoose = request("mongoose"); 

mongoose.connect('mongodb://localhost:27017/exampleDB', function(err) {

if (err) {

console.log(err);

} else {

console.log("database connected");

}

});

你从这个网址 https://www.npmjs.com/package/mongoose http://mongoosejs.com/docs/guide.html

以上是 无法创建集合? 的全部内容, 来源链接: utcz.com/qa/266340.html

回到顶部