Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  Using MySQL as a Document Store  /  Document Store Concepts

22.2 文档存储概念

本节解释了使用 MySQL 作为文档存储时引入的概念。

JSON 文档是一种由键值对组成的数据结构,是使用 MySQL 作为文档存储的基本结构。例如,后面在本章中安装的 world_x schema 中包含了这个文档:

{
    "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 键的值由多个键值对组成。JSON 文档使用 MySQL 二进制 JSON 对象内部表示,通过JSON MySQL 数据类型。

文档和传统关系数据库表之间最重要的区别是文档结构不需要事先定义,集合可以包含多个具有不同结构的文档。相反,关系表则需要事先定义结构,并且所有行都必须包含相同的列。

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

可以对集合执行四种基本操作:Create、Read、Update 和 Delete(CRUD)。在 MySQL 中,这意味着:

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

  • 读取一个或多个文档(查询)

  • 更新一个或多个文档

  • 删除一个或多个文档