<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # MongoDB 數據庫,對象,集合 ## 描述 不管我們學習什么數據庫都應該學習其中的基礎概念,在mongodb中基本的概念是文檔、集合、數據庫,下面我們挨個介紹。 ## 數據庫 一個mongodb中可以建立多個數據庫。 MongoDB的默認數據庫為"db",該數據庫存儲在data目錄中。 在MongoDB中可以創建數據庫,如果你想使用MongoDB,創建數據庫不是必要的。 "show dbs" 命令可以顯示所有數據的列表。 ![show-dbs-command](https://box.kancloud.cn/2015-12-13_566cf2ecd9c09.jpg) 執行 "db" 命令可以顯示當前數據庫對象或者集合。 ![db-command](https://box.kancloud.cn/2015-12-13_566cf2ed23106.jpg) 運行"use"命令,可以連接到一個指定的數據庫。 ![use-command](https://box.kancloud.cn/2015-12-13_566cf2ed30035.jpg) 以上實例命令中,"student" 是你要檢索的數據庫。 在下一個章節我們將詳細講解MongoDB中命令的使用。 數據庫名稱可以是任何字符,但是不能包含空字符串,點號(.),或者" "。 "system" 作為系統保留字符串不能作為數據庫名。 數據庫名不能包含 "$"。 ## 文檔 文檔是mongodb中的最核心的概念,是其核心單元,我們可以將文檔類比成關系型數據庫中的每一行數據。 多個鍵及其關聯的值有序的放置在一起就是文檔。在mongodb中使用一種類json的bson存儲數據。 bson數據可以理解為在json的基礎上添加了一些json中沒有的數據類型。 如果我們會json,那么bson我們就已經掌握了一半了,至于新添加的數據類型后面我會介紹。 文檔例子如下: ``` { site : "w3cschool.cc" } ``` 通常,"object(對象)" 術語是指一個文件。 文件類似于一個RDBMS的記錄。 我們可以對集合(collection)進行插入,更新和刪除操作。 下表將幫助您更容易理解Mongo中的一些概念: | RDBMS | MongoDB | | --- | --- | | Table(表) | Collection(集合) | | Column(欄) | Key(鍵) | | Value(值) | Value(值) | | Records / Rows(記錄/列) | Document / Object(文檔/對象) | 下表為MongoDB中常用的幾種數據類型。 | 數據類型 | 描述 | | --- | --- | | string(字符串) | 可以是一個空字符串或者字符組合。 | | integer(整型) | 整數。 | | boolean(布爾型) | 邏輯值 True 或者 False。 | | double | 雙精度浮點型 | | null | 不是0,也不是空。 | | array | 數組:一系列值 | | object | 對象型,程序中被使用的實體。可以是一個值,變量,函數,或者數據結構。 | | timestamp | timestamp存儲為64為的值,只運行一個mongod時可以確保是唯一的。前32位保存的是UTC時間,單位是秒,后32為是在這一秒內的計數值,從0開始,每新建一個MongoTimestamp對象就加一。 | | Internationalized Strings | UTF-8 字符串。 | | Object IDs | 在mongodb中的文檔需要使用唯一的關鍵字_id來標識他們。幾乎每一個mongodb文檔都使用_id字段作為第一個屬性(在系統集合和定容量集合(capped collection)中有一些例外)。_id值可以是任何類型,最常見的做法是使用ObjectId類型。 | ## 集合 集合就是一組文檔的組合。如果將文檔類比成數據庫中的行,那么集合就可以類比成數據庫的表。 在mongodb中的集合是無模式的,也就是說集合中存儲的文檔的結構可以是不同的,比如下面的兩個文檔可以同時存入到一個集合中: ``` {"name":"mengxiangyue"} {"Name":"mengxiangyue","sex":"nan"} ``` 當第一個文檔插入時,集合就會被創建。 ## 合法的集合名 集合名稱必須以字母或下劃線開頭。 集合名可以保護數字 集合名稱不能使美元符"$","$"是系統保留字符。 集合的名字 最大不能超過128個字符 。 另外,"."號的使用在集合當中是允許的,它們被成為子集合(Subcollection);比如你有一個blog集合,你可以使用blog.title,blog.content或者blog.author來幫組你更好地組織集合。 如下實例: ``` db.tutorials.php.findOne() ``` ## capped collections Capped collections 就是固定大小的collection。 它有很高的性能以及隊列過期的特性(過期按照插入的順序). 有點和 "RRD" 概念類似。 Capped collections是高性能自動的維護對象的插入順序。它非常適合類似記錄日志的功能 和標準的collection不同,你必須要顯式的創建一個capped collection, 指定一個collection的大小,單位是字節。collection的數據存儲空間值提前分配的。 要注意的是指定的存儲大小包含了數據庫的頭信息。> db.createCollection("mycoll", {capped:true, size:100000}) * 在capped collection中,你能添加新的對象。 * 能進行更新,然而,對象不會增加存儲空間。如果增加,更新就會失敗 。 * 數據庫不允許進行刪除。使用drop()方法刪除collection所有的行。 * 注意: 刪除之后,你必須顯式的重新創建這個collection。 * 在32bit機器中,capped collection最大存儲為1e9( 1X109)個字節。 ## 元數據 數據庫的信息是存儲在集合中。它們使用了系統的命名空間: ``` dbname.system.* ``` 在MongoDB數據庫中名字空間 &lt;dbname&gt;.system.* 是包含多種系統信息的特殊集合(Collection),如下: | 集合命名空間 | 描述 | | --- | --- | | dbname.system.namespaces | 列出所有名字空間。 | | dbname.system.indexes | 列出所有索引。 | | dbname.system.profile | 包含數據庫概要(profile)信息。 | | dbname.system.users | 列出所有可訪問數據庫的用戶。 | | dbname.local.sources | 包含復制對端(slave)的服務器信息和狀態。 | 對于修改系統集合中的對象有如下限制。 在{{system.indexes}}插入數據,可以創建索引。但除此之外該表信息是不可變的(特殊的drop index命令將自動更新相關信息)。 {{system.users}}是可修改的。 {{system.profile}}是可刪除的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看