node.js MongoDBのドキュメントを更新するサンプル

環境
Ubuntu 20.10
node V14.15.1
mongo 4.4.2

操作方法
1.mongooseをインストールします。
npm i mongoose

2.MongoDBに接続する

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$ mongo
> use testdb
> db.users.save( {username:"sample"} )
WriteResult({ "nInserted" : 1 })
> show dbs
$ mongo > use testdb > db.users.save( {username:"sample"} ) WriteResult({ "nInserted" : 1 }) > show dbs
$ mongo

> use testdb

> db.users.save( {username:"sample"} )
WriteResult({ "nInserted" : 1 })

> show dbs

3.MongoDBに接続してドキュメントを更新する

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
// MongoDB接続
const options = {
useUnifiedTopology: true,
useNewUrlParser: true
}
mongoose.connect('mongodb://127.0.0.1/testdb', options)
.then(() => console.log('connected'))
.catch((err) => console.error(err));
// スキーマ作成
const mongoSchema = new Schema({
name: String,
age: Number,
});
// モデル作成
let sample = mongoose.model('sample', mongoSchema);
// ドキュメント作成
const cft = new sample({
name: 'yamada',
age: 19
});
// ドキュメント保存
cft.save((err) => {
if (err) throw err;
});
// ドキュメント更新
sample.update(
{ name: 'yamada' },
{ $set: { age: 25 } },
(err) =>{
if (err) throw err;
}
);
// 検索
sample.find({ name: 'yamada' }, (err, result) => {
if (err) throw err;
console.log(result[0].name);
console.log(result[0].age);
});
const mongoose = require('mongoose'); const Schema = mongoose.Schema; // MongoDB接続 const options = { useUnifiedTopology: true, useNewUrlParser: true } mongoose.connect('mongodb://127.0.0.1/testdb', options) .then(() => console.log('connected')) .catch((err) => console.error(err)); // スキーマ作成 const mongoSchema = new Schema({ name: String, age: Number, }); // モデル作成 let sample = mongoose.model('sample', mongoSchema); // ドキュメント作成 const cft = new sample({ name: 'yamada', age: 19 }); // ドキュメント保存 cft.save((err) => { if (err) throw err; }); // ドキュメント更新 sample.update( { name: 'yamada' }, { $set: { age: 25 } }, (err) =>{ if (err) throw err; } ); // 検索 sample.find({ name: 'yamada' }, (err, result) => { if (err) throw err; console.log(result[0].name); console.log(result[0].age); });
const mongoose = require('mongoose');
const Schema = mongoose.Schema;

// MongoDB接続
const options = {
    useUnifiedTopology: true,
    useNewUrlParser: true
}

mongoose.connect('mongodb://127.0.0.1/testdb', options)
    .then(() => console.log('connected'))
    .catch((err) => console.error(err));

// スキーマ作成
const mongoSchema = new Schema({
    name: String,
    age: Number,
});

// モデル作成
let sample = mongoose.model('sample', mongoSchema);

// ドキュメント作成
const cft = new sample({
    name: 'yamada',
    age: 19
});

// ドキュメント保存
cft.save((err) => {
    if (err) throw err;
});

// ドキュメント更新
sample.update(
    { name: 'yamada' },
    { $set: { age: 25 } },
    (err) =>{
        if (err) throw err;
    }
);

// 検索
sample.find({ name: 'yamada' }, (err, result) => {
    if (err) throw err;
    console.log(result[0].name); 
    console.log(result[0].age); 
});

 

Node.js

Posted by arkgame