--- sidebar_position: 9 description: Update records and other functions to work with MySQL in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, MySQL] --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; # Update records Updates the value of records by selected criteria `Function UpdateRecords(Val Table, Val ValueStructure, Val Filters = "", Val Connection = "", Val Tls = "") Export` | Parameter | CLI option | Type | Required | Description | |-|-|-|-|-| | Table | --table | String | ✔ | Table name | | ValueStructure | --values | Structure Of KeyAndValue | ✔ | Values structure: Key > field, Value > field value | | Filters | --filter | Array of Structure | ✖ | Filters array. See GetRecordsFilterStrucutre | | Connection | --dbc | String, Arbitrary | ✖ | Connection or connection string | | Tls | --tls | Structure Of KeyAndValue | ✖ | TLS settings, if necessary. See GetTlsSettings | Returns: Map Of KeyAndValue - Result of query execution
:::tip Record data is specified as an array of structures of the following type:
`{'Field name 1': {'Type': 'Value'}, 'Field name 2': {'Type': 'Value'},...}` The list of available types is described on the initial page of the MySQL library documentation :::
```bsl title="1C:Enterprise/OneScript code example" Address = "127.0.0.1"; Login = "bayselonarrend"; Password = "12we..."; Base = "test_data"; ConnectionString = OPI_MySQL.GenerateConnectionString(Address, Base, Login, Password); Table = "test_data"; FieldsStructure = New Structure; FieldsStructure.Insert("ip_address", New Structure("VARCHAR", "127.0.0.1")); Filters = New Array; FilterStructure = New Structure; FilterStructure.Insert("field", "gender"); FilterStructure.Insert("type" , "="); FilterStructure.Insert("value", New Structure("VARCHAR", "Male")); FilterStructure.Insert("raw" , False); Filters.Add(FilterStructure); // When using the connection string, a new connection is initialised, // which will be closed after the function is executed. // If several operations are performed, it is desirable to use one connection, // previously created by the CreateConnection function() Result = OPI_MySQL.UpdateRecords(Table, FieldsStructure, FilterStructure, ConnectionString); ``` ```bash # JSON data can also be passed as a path to a .json file oint mysql UpdateRecords \ --table "testtable" \ --values "{'varchar_field':{'VARCHAR':'Another varchar'}}" \ --dbc "mysql://bayselonarrend:***@127.0.0.1:3306/" \ --tls "{'use_tls':true,'accept_invalid_certs':true}" ``` ```batch :: JSON data can also be passed as a path to a .json file oint mysql UpdateRecords ^ --table "testtable" ^ --values "{'varchar_field':{'VARCHAR':'Another varchar'}}" ^ --dbc "mysql://bayselonarrend:***@127.0.0.1:3306/" ^ --tls "{'use_tls':true,'accept_invalid_certs':true}" ``` ```json title="Result" { "result": true } ```