亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nodejs漸入佳境[18]-mongodb-node增刪查改

發布時間:2020-07-02 05:30:20 來源:網絡 閱讀:131 作者:jonson_jackson 欄目:開發技術
1
> npm install --save mongodb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//mongodb 3以上寫法
const MongoClient = require('mongodb').MongoClient;

//TodoApp是一個數據庫名字,mongo中不需要創建數據庫
MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');

 //插入數據
 db.collection('Todos').insertOne({
   text:'Something to do',
   completed:false
 },(err,result)=>{
   if(err){
       return console.log('unable to insert todo',err);
   }
       console.log(JSON.stringify(result.ops,undefined,2));
 });
//關閉客戶端
 client.close();

});

id

插入一個對象的時候,會自動的產生一個隨機的id。id包含了時間戳和機器識別碼。
我們可以借助與mongo的方法,為我們產生一個隨機數。

1
2
3
4
5
const {MongoClient,ObjectID} = require('mongodb');
var obj = new ObjectID();
console.log(obj);
//返回時間
console.log(obj.getTimestamp());

參考資料:
MongoDB Node.js Driver Documentation
node-mongodb-native

查詢

原始數據:

1
2
3
4
5
6
7
8
9
10
11
12
[
 {
   "_id": "5bee9e3794c5f22eb989f6eb",
   "text": "Something to do",
   "completed": false
 },
 {
   "_id": "5beeaf0a2d48eb2b7c90758f",
   "text": "Something to do",
   "completed": true
 }
]

js代碼:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
const {MongoClient,ObjectID} = require('mongodb');

MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');

 //返回所有document
 db.collection('Todos').find().toArray().then((docs)=>{
   console.log('Todos');
   console.log(JSON.stringify(docs,undefined,2));
 },(err)=>{
   console.log('unable to fetch todos', err);
 })

 client.close();
});

執行代碼返回:

1
2
3
4
5
6
7
8
9
10
11
12
[
 {
   "_id": "5bee9e3794c5f22eb989f6eb",
   "text": "Something to do",
   "completed": false
 },
 {
   "_id": "5beeaf0a2d48eb2b7c90758f",
   "text": "Something to do",
   "completed": true
 }
]

篩選

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
const {MongoClient,ObjectID} = require('mongodb');

MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');
 db.collection('Todos').find({completed:true}).toArray().then((docs)=>{
   console.log('Todos');
   console.log(JSON.stringify(docs,undefined,2));
 },(err)=>{
   console.log('unable to fetch todos', err);
 })

 client.close();

});

執行代碼返回:

1
2
3
4
5
6
7
[
 {
   "_id": "5beeaf0a2d48eb2b7c90758f",
   "text": "Something to do",
   "completed": true
 }
]
篩選id
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const {MongoClient,ObjectID} = require('mongodb');

MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');
 db.collection('Todos').find({
   new ObjectID('5beeaf0a2d48eb2b7c90758f')
 }).toArray().then((docs)=>{
   console.log('Todos');
   console.log(JSON.stringify(docs,undefined,2));
 },(err)=>{
   console.log('unable to fetch todos', err);
 })

 client.close();

});

執行代碼返回:

1
2
3
4
5
6
7
[
 {
   "_id": "5beeaf0a2d48eb2b7c90758f",
   "text": "Something to do",
   "completed": true
 }
]

刪除document

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const {MongoClient,ObjectID} = require('mongodb');

MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');
//  db.collection('Todos').deleteMany({text:'mike'});  刪除全部

//刪除一個
 // db.collection('Todos').deleteOne({text:'mike'}).then((result)=>{
 //     console.log(result);
 // });

//刪除并返回對象
 db.collection('Todos').findOneAndDelete({text:'mike'}).then((result)=>{
     console.log(result);
 });

 client.close();

});

更新

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const {MongoClient,ObjectID} = require('mongodb');

MongoClient.connect('mongodb://localhost:27017/TodoApp',(err,client)=>{
   if(err){
     return console.log('Unable to connect to MongoDB server');
   }
   console.log('Connect to MongoDB server');
 const db = client.db('TodoApp');

//查找并更新
 db.collection('Todos').findOneAndUpdate({text:'mike'},{
   $set:{
     completed:false       //設置更改
   }
 },{
   returnOriginal:false  //返回的結果為更新后的值。
 }).then((result)=>{
   console.log(result); //打印跟新結果
 });

 client.close();
});
  • 本文鏈接: https://dreamerjonson.com/2018/11/16/node-18-mongodb-node/

  • 版權聲明: 本博客所有文章除特別聲明外,均采用 CC BY 4.0 CN協議 許可協議。轉載請注明出處!

nodejs漸入佳境[18]-mongodb-node增刪查改

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

闸北区| 竹北市| 朝阳区| 安岳县| 堆龙德庆县| 新闻| 青神县| 延津县| 江西省| 辽宁省| 华蓥市| 和林格尔县| 开阳县| 杭州市| 陆良县| 本溪| 金坛市| 蒙山县| 历史| 山西省| 昌乐县| 富平县| 拜城县| 隆子县| 宜川县| 开平市| 莱芜市| 衡山县| 建阳市| 苏尼特左旗| 瑞昌市| 嘉义县| 益阳市| 潢川县| 棋牌| 老河口市| 温州市| 雷山县| 长丰县| 昭苏县| 清水河县|