20.2 文档存储概念

本节解释作为使用 MySQL 作为文档存储的一部分引入的概念。

JSON文件

JSON文档是由键值对组成的数据结构,是使用MySQL作为文档存储的基础结构。例如,world_x 模式(在本章稍后安装)包含此文档:

{
    "GNP": 4834,
    "_id": "00005de917d80000000000000023",
    "Code": "BWA",
    "Name": "Botswana",
    "IndepYear": 1966,
    "geography": {
        "Region": "Southern Africa",
        "Continent": "Africa",
        "SurfaceArea": 581730
    },
    "government": {
        "HeadOfState": "Festus G. Mogae",
        "GovernmentForm": "Republic"
    },
    "demographics": {
        "Population": 1622000,
        "LifeExpectancy": 39.29999923706055
    }
}

本文档显示键的值可以是简单的数据类型,例如整数或字符串,但也可以包含其他文档、数组和文档列表。例如, geography键的值由多个键值对组成。通过 JSONMySQL 数据类型,JSON 文档在内部使用 MySQL 二进制 JSON 对象表示。

文档与传统关系数据库中已知的表之间最重要的区别是文档的结构不必预先定义,并且集合可以包含具有不同结构的多个文档。另一方面,关系表需要定义它们的结构,并且表中的所有行必须包含相同的列。

收藏

集合是用于在 MySQL 数据库中存储 JSON 文档的容器。应用程序通常针对文档集合运行操作,例如查找特定文档。

增删改查操作

可以对集合发出的四个基本操作是创建、读取、更新和删除 (CRUD)。就 MySQL 而言,这意味着:

  • 创建新文档(插入或添加)

  • 阅读一份或多份文件(查询)

  • 更新一个或多个文件

  • 删除一个或多个文档