Mysql
 sql >> Database >  >> RDS >> Mysql

metodo mySQL JSON Document Store per l'inserimento di dati nei livelli del nodo 3 in profondità

Potresti voler leggere https://dev. mysql.com/doc/refman/8.0/en/json-function-reference.html ed esplora ciascuna delle funzioni e provale una per una, se intendi continuare a lavorare con i dati JSON in MySQL.

Sono stato in grado di fare ciò che descrivi in ​​questo modo:

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';

Poi ho controllato i dati:

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"
        }
      ]
    }
  }
}

Ho iniziato con dati come i tuoi, ma per questo test ho troncato tutto dopo le parties matrice.