javascript - 如何从 mlab 数据库检索记录

标签 javascript node.js mongodb mongoose

我是 Javascript 和 Node 的新手,并且在 MongoDB 上遇到了麻烦。所以我已经成功使用连接字符串(使用 Mongoose )连接到我的数据库。这就是我陷入困境的地方,我想做的是检索数据库的第一条记录。看起来像是一个简单的任务,但也许我不仅仅是理解一些语法或其他东西。

我认为解决方案涉及到与模式有关的东西?但我还没能让他们工作。

这是我的 JavaScript 文件。请注意,用户名和密码已被省略。

const mongoose = require('mongoose');

//url to connect to database
const url = 'mongodb://<username>:<password>@ds157614.mlab.com:57614/flight_data';

//connect to mongodb
mongoose.connect(url, { useNewUrlParser: true });

mongoose.connection.once('open', function()
{
  console.log('Connected successfully');

}).on('error', function(error)
{
  console.log('Connection Error: ', error);
});

以下是数据库中记录的示例:

{
    "_id": {
        "$oid": "5c3538d8ae9fb3103c5b2691"
    },
    "data": {
        "plane_id": 2202,
        "temperature": 100
    },
    "airport": "KBUF"
}

我搞乱了 mongoose.connection 并得到了一些要显示的信息,但不是我想要的。我希望输出只是数据库中的第一条记录。

最佳答案

据我所知,没有从数据库中获取第一条记录之类的事情,但您可以从模式(与 SQL 上下文中的表相同)中获取记录或文档(与 SQL 上下文中的行相同)。为此,您需要先创建一个模型。

const mongoose     = require('mongoose');
const Schema       = mongoose.Schema;

const bookSchema   = new Schema({
    title: { type:String },
    description: { type:String }
});

module.exports = mongoose.model('Book', bookSchema);

并使用获取

Book.find({ title:'search' }, function(err, books) {
  // TODO: Do whatever you want
});

关于javascript - 如何从 mlab 数据库检索记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55584376/

相关文章:

mongodb - 在不使用 GridFS 的情况下将图像存储在 MongoDB 的文档中

javascript - 为什么 Backbone.js 模型的新实例包含预定义默认值的附加值?

javascript - Angular 用户界面 : Correctly updating the models between two lists with a filter applied

jquery - 将新的键值对推送到 json

javascript - Node 中的请求模块的 POST 请求不起作用

javascript - 具有特定值的 Mongoose 模式属性

php - 如何通过 php 对 mongodb 上的嵌套对象进行排序?

javascript - 我的网站在 Bootstrap 4.1.3 中没有响应

javascript - .slideToggle 类单独基于 .click

javascript - NodeJS Firebase 应用程序在无效的 JSON 上崩溃