10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 42.0 mb
PDF (A4)- 42.1 mb
手册页(TGZ)- 266.5 kb
手册页(邮政编码)- 376.2 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

20.4.3.4修改文档

您可以使用修改()方法更新集合中的一个或多个文档。X DevAPI提供了用于修改()方法:

  • 在文档中设置和取消设置字段。

  • 追加、插入和删除数组。

  • 对需要修改的文档进行绑定、限制和排序。

设置和取消设置文档字段

修改()方法的工作原理是过滤集合以只包含要修改的文档,然后对这些文档应用指定的操作。

在下面的例子中,修改()方法使用搜索条件识别要更改的文档,然后设置()方法替换嵌套的人口统计对象中的两个值。

mysql-py > db.countryinfo。修改(“代码=‘海’”)。set("demographic ", {" lifespan ": 78, "Population": 28})

修改文档后,请使用find ()方法来验证更改。

要从文档中删除内容,请使用修改()而且设置()方法。例如,以下查询从匹配搜索条件的文档中删除GNP。

mysql-py > db.countryinfo。修改(" Name =西兰”).unset(国民生产总值)

使用find ()方法来验证更改。

mysql-py > db.countryinfo。find("Name = 'Sealand'") {"_id": "00005e2ff4af00000000000000f4", "Name": "Sealand", "Code:": "SEA", "IndepYear": 1967, "geography": {"Region": "British Islands", "Continent": "Europe", "SurfaceArea": 193}, "government": {"HeadOfState": "Michael Bates", "GovernmentForm": "君主制"},"Population": {"Population": 27, "预期寿命":79}}
追加、插入和删除数组

方法可将元素添加到数组字段中,或在数组中插入或删除元素array_append ()array_insert (),或array_delete ()方法。下面的示例修改countryinfo收集以启用跟踪国际机场。

第一个示例使用修改()而且设置()方法在所有文档中创建一个新的Airports字段。

谨慎

在不指定搜索条件的情况下修改文档时要小心;这样做将修改集合中的所有文档。

mysql-py > db.countryinfo.modify(“真正的”)。集(“机场”,[])

添加了Airports字段后,下一个示例使用array_append ()方法将新机场添加到文档之一。美元。机场中的表示当前文档的Airports字段。

mysql-py > db.countryinfo。修改(" Name =法国”).array_append(" $。机场”、“ORY”)

使用find ()看到变化。

mysql-py > db.countryinfo。find("Name = 'France'") {"GNP": 1424285, "_id": "00005de917d80000000000000048", "Code": "FRA", "Name": "France", "Airports": ["ORY"], "IndepYear": 843, "geography": {"Region": "西欧","Continent": "Europe", "SurfaceArea": 551500}, "government":{"元首":"Jacques Chirac", "GovernmentForm": "Republic"}, "Population": {"Population": 59225700, "预期寿命":78.80000305175781}}

方法可将元素插入到数组中的不同位置array_insert ()方法指定要在路径表达式中插入哪个索引。在本例中,索引为0,即数组中的第一个元素。

mysql-py > db.countryinfo。修改(" Name =法国”).array_insert(" $。机场[0]”、“CDG”)

要从数组中删除元素,必须传递给array_delete ()方法要删除的元素的索引。

mysql-py > db.countryinfo。修改(" Name =法国”).array_delete (" $ .Airports[1]”)
相关信息