日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MongoDB 数据库、集合创建删除与文档插入

發布時間:2025/3/20 数据库 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MongoDB 数据库、集合创建删除与文档插入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

  本文章主要介紹mongodb的基本命令,前提條件,你的本地已經安裝了mongo。

一、基本命令使用(主要是創建,增刪改。)

  0.mongoDb統計信息

  獲得關于MongoDB的服務器統計,需要在MongoDB客戶端鍵入命令db.stats()。這將顯示數據庫名稱,阻礙收集和數據庫中的文檔。

  

?

  1.創建數據庫

  命令:use?

  use DATABASE_NAME ?:用戶創建數據庫,如果存在則使用數據庫,沒有則創建。

  例子:創建數據庫mydb   

  >use mydb ?

  >switched to db myPort?

  2.查詢當前選擇的數據庫

  命令:db

  3.查詢數據庫列表

  命令:show dbs?

  注意:要顯示的數據庫,需要把它插入至少一個文件

  4.刪除數據庫

  命令:?db.dropDatabase() ?

  注意:刪除正在使用的數據庫,如果沒有選擇,則刪除默認的test數據庫

  5.創建集合

  命令:db.createCollection(name, options)

參數類型描述
NameString要創建的集合名稱
optionsDocument(可選)指定有關內存大小和索引選項
字段類型描述
cappedBoolean(可選)如果為true,則啟用封頂集合。封頂集合是固定大小的集合,會自動覆蓋最早的條目,當它達到其最大大小。如果指定true,則需要也指定尺寸參數。
autoIndexIDBoolean(可選)如果為true,自動創建索引_id字段的默認值是false。
sizenumber(可選)指定最大大小字節封頂集合。如果封頂如果是 true,那么你還需要指定這個字段。
maxnumber(可選)指定封頂集合允許在文件的最大數量。

    例子:

    >db.createCollection("mycollection")

    { "ok" : 1 }

    >db.createCollection("mycol", { capped : true, autoIndexID : true, size : 6142800, max : 10000 } )

?    { "ok" : 1 }

  

  在MongoDB中,不需要創建集合。當插入一些文件 MongoDB 自動創建的集合。

  例子:

    

  ?6.查詢集合

  命令:show collections?  

  7.刪除集合

  命令:db.COLLECTION_NAME.drop():從當前數據庫刪除某個集合。

    

  drop() 方法將返回?true,如果選擇成功收集被丟棄,否則將返回?false。

  8.數據類型

  String,Integer,Boolean,Double,Arrays ,

  Min/ Max keys?: 這種類型被用來對BSON元素的最低和最高值比較;

  Timestamp?: 時間戳。這可以方便記錄時的文件已被修改或添加;

  Object?: 此數據類型用于嵌入式的文件。

?  Null?: 這種類型是用來存儲一個Null值;

  Symbol?: 此數據類型用于字符串相同,但它通常是保留給特定符號類型的語言使用;

  Date?: 此數據類型用于存儲當前日期或時間的UNIX時間格式。可以指定自己的日期和時間,日期和年,月,日到創建對象。

  Object ID?: 此數據類型用于存儲文檔的ID;

  Binary data?: 此數據類型用于存儲二進制數據;

  Code?: 此數據類型用于存儲到文檔中的JavaScript代碼;

  Regular expression?: 此數據類型用于存儲正則表達式。

  9.插入文檔

  命令:>db.COLLECTION_NAME.insert(document)

   

  插入文檔中,如果我們不指定_id參數,然后MongoDB 本文檔分配一個獨特的ObjectId。

  _id 是12個字節的十六進制數,唯一一個集合中的每個文檔

  save操作和insert的區別:

  如果document不指定_id 或者_id不存在 save與insert操作一致,如果存在_id,并且_id在document中已經存在,使用insert會報錯,如果使用save則會替換之前的數據。

  例子:

    

  首先插入一條_id為575e262dccf718eb665437a1的文檔,在用insert時會出錯,禁止插入,如果使用save操作可以保存成功。

?

  10.刪除文檔

? ??MongoDB的?remove()?方法用于從集合中刪除文檔。remove()?方法接受兩個參數。第一個是刪除criteria ,第二是justOne標志:

  • deletion criteria :(可選)刪除標準,根據文件將被刪除。

  • justOne :?(可選)如果設置為true或1,然后只刪除一個文件。

  • ? ?命令:>db.COLLECTION_NAME.remove(document)

    ? ? ? ? ? ? >db.COLLECTION_NAME.remove({}) 清空所有的數據,但是不建議用,因為速度慢,性能不好,推薦的辦法就是將集合刪除然后重新創建集合和索引。

    ? ? 例子:刪除name為zzx的文檔。

    ? ? ? ??

    ? ??11.更新文檔

    ? ??MongoDB的?update()?和?save()?方法用于更新文檔的集合。?update()方法更新現有的文檔值,而替換現有的文檔通過的文件中?save()?方法。

    ? ??11.1 update

    ? ? ?語法:>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA,?UPDATED_DATA)

    ? ? 常見的錯誤:查詢條件匹配了多個文檔,更新的時候第二個參數的存在就可能出現重復的“_id”,數據庫就會報錯。

    ? ? 用新的文檔替換查到的文檔。

    ????使用修改器:

    ? ??通常文檔只會有一部分的更新,使用原子的修改器可以高效的實現更新。

    ? ??①“$set”修改器:

    ? ? 用來指定一個鍵的值,就是賦值操作,如果這個鍵值不存在就創建,。

    ? ? 例子:

    ? ? ? ??

    ? ??“$set”也可以修改鍵的數據類型,將某個鍵改成任意的數據類型。包括數組,集合,

    ? ? “$unset”:刪除某個鍵值。

    ? ? 例子:

    ? ? ? ??

    ? ???② “$inc” 增加或者減少某個值

    ? ? 用于增加已有的鍵值,如果沒有則創建。

    ? ? 例子:減少年齡三歲

    ? ?  ?

    ? ??只能用于數字,如果用于其他會報錯

    ????③“$push”:數組插入

    ? ? 會在已有的數組末尾添加一個元素,如果沒有則創建一個數組。

    ? ? 例子:

    ? ? ??

    ? ??④"$addToSet":與“$push”使用方法一樣,保證數據不重復

    ? ??⑤數組的定位修改器

    ? ??如果數組有多個,我們只想修改部分,有兩種方案:一、通過位置;二、定位操作符。

    ? ??upset使用

    ? ??一種特殊的更新,如果查詢不到更新的數據,則創建這個文檔。

    ? ? 使用方法:>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA,?UPDATED_DATA,true)

    二、瞬間完成

    ? ??以上的插入、刪除、更新操作都是瞬間完成,他不需要等待服務器相應。這樣有好處有壞處。好處就是快速相應,減少客戶端的等待時間。壞處就是如果服務器沒有將數據做好處理,或者客戶端不知道服務器掛掉會一直發送數據。對于某些重要的信息還是很危險的。

    ? ??1.安全操作:

    ? ??對于某些需要數據庫服務器返回結果的操作,可以使用安全版本操作。驅動程序會等待數據庫相應,如果遇見錯誤則拋出一個可捕獲的異常。

    ?

    ?

      寫在后面的話:吐槽下博客園,昨天寫了半天的文章,結果沒有保存,電腦掛點啦。都丟失啦,都沒有做自動保存 好搓!!!!!

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

      

    轉載于:https://www.cnblogs.com/zhangzongxing01/p/5578979.html

    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的MongoDB 数据库、集合创建删除与文档插入的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。