sql >> Database >  >> RDS >> Mysql

mySQL JSON Document Store-methode voor het invoegen van gegevens in knooppunt 3 niveaus diep

Misschien wil je https://dev. mysql.com/doc/refman/8.0/en/json-function-reference.html en verken elk van de functies en probeer ze één voor één uit, als u met JSON-gegevens in MySQL blijft werken.

Ik heb kunnen doen wat je beschrijft op deze manier:

update ssp_models set json_data = json_array_append(
    json_data, 
    '$."system-security-plan".metadata.parties', 
    json_object('name', 'Bingo', 'type', 'farmer')
)
where uuid = '66c2a1c8-5830-48bd-8fdd-55a1c3a52888';

Toen controleerde ik de gegevens:

mysql> select uuid, json_pretty(json_data) from ssp_models\G
*************************** 1. row ***************************
                  uuid: 66c2a1c8-5830-48bd-8fdd-55a1c3a52888
json_pretty(json_data): {
  "system-security-plan": {
    "uuid": "66c2a1c8-5830-48bd-8fdd-55a1c3a52888",
    "metadata": {
      "roles": [
        {
          "id": "legal-officer",
          "title": "Legal Officer"
        }
      ],
      "title": "Enterprise Logging and Auditing System Security Plan",
      "parties": [
        {
          "name": "Enterprise Asset Owners",
          "type": "organization",
          "uuid": "3b2a5599-cc37-403f-ae36-5708fa804b27"
        },
        {
          "name": "Enterprise Asset Administrators",
          "type": "organization",
          "uuid": "833ac398-5c9a-4e6b-acba-2a9c11399da0"
        },
        {
          "name": "Bingo",
          "type": "farmer"
        }
      ]
    }
  }
}

Ik ben begonnen met gegevens zoals die van jou, maar voor deze test heb ik alles ingekort na de parties array.




  1. logging uitgebreidheid mysql 5.7

  2. Hoe wijzig ik de standaard NLS-parameters voor datumnotatie via Toad?

  3. PHP/MySQL:Selecteer locaties in de buurt van een bepaalde locatie uit DB

  4. Lijst met MySQL-databases en serverversie krijgen?