--- sidebar_position: 6 description: Adds new rows to the tableСтраницы 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'; # Add rows Adds new rows to the table `Function AddRecords(Val Table, Val DataArray, Val Transaction = True, Val Connection = "", Val Tls = "") Export` | Parameter | CLI option | Type | Required | Description | |-|-|-|-|-| | Table | --table | String | ✔ | Table name | | DataArray | --rows | Array of Structure | ✔ | An array of string data structures: Key > field, Value > field value | | Transaction | --trn | Boolean | ✖ | True > adding records to transactions with rollback on error | | 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 = "testbase1"; ConnectionString = OPI_MySQL.GenerateConnectionString(Address, Base, Login, Password); Table = "testtable"; RecordsArray = New Array; Image = "https://api.athenaeum.digital/test_data/picture.jpg"; OPI_TypeConversion.GetBinaryData(Image); // Image - Type: BinaryData CurrentDate = OPI_Tools.GetCurrentDate(); RecordStructure = New Structure; RecordStructure.Insert("char_field" , New Structure("TEXT" , "AAAAA")); RecordStructure.Insert("varchar_field" , New Structure("TEXT" , "Some varchar")); RecordStructure.Insert("tinytext_field" , New Structure("TEXT" , "Some tiny text")); RecordStructure.Insert("text_field" , New Structure("TEXT" , "Some text")); RecordStructure.Insert("mediumtext_field", New Structure("TEXT" , "Some medium text")); RecordStructure.Insert("longtext_field" , New Structure("TEXT" , "Some looooooong text")); RecordStructure.Insert("tinyint_field" , New Structure("INT" , 127)); RecordStructure.Insert("smallint_field" , New Structure("INT" , -32767)); RecordStructure.Insert("mediumint_field" , New Structure("INT" , 8388607)); RecordStructure.Insert("int_field" , New Structure("INT" , -2147483647)); RecordStructure.Insert("uint_field" , New Structure("UINT" , 4294967295)); RecordStructure.Insert("bigint_field" , New Structure("INT" , 9223372036854775807)); RecordStructure.Insert("float_field" , New Structure("FLOAT" , 100.50)); RecordStructure.Insert("double_field" , New Structure("FLOAT" , 100.512123)); RecordStructure.Insert("date_field" , New Structure("DATE" , CurrentDate)); RecordStructure.Insert("time_field" , New Structure("TIME" , CurrentDate)); RecordStructure.Insert("datetime_field" , New Structure("DATE" , CurrentDate)); RecordStructure.Insert("timestamp_field" , New Structure("DATE" , CurrentDate)); RecordStructure.Insert("mediumblob_field", New Structure("BYTES" , Image)); RecordStructure.Insert("set_field" , New Structure("TEXT" , "one")); RecordsArray.Add(RecordStructure); // 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.AddRecords(Table, RecordsArray, True, ConnectionString); ``` ```bash # JSON data can also be passed as a path to a .json file oint mysql AddRecords \ --table "testtable" \ --rows "[{'char_field':{'TEXT':'AAAAA'},'varchar_field':{'TEXT':'Some varchar'},'tinytext_field':{'TEXT':'Some tiny text'},'text_field':{'TEXT':'Some text'},'mediumtext_field':{'TEXT':'Some medium text'},'longtext_field':{'TEXT':'Some looooooong text'},'tinyint_field':{'INT':127},'smallint_field':{'INT':-32767},'mediumint_field':{'INT':8388607},'int_field':{'INT':-2147483647},'uint_field':{'UINT':4294967295},'bigint_field':{'INT':9223372036854775807},'float_field':{'FLOAT':100.50},'double_field':{'FLOAT':100.512123},'date_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'time_field':{'TIME':'2025-05-01T15:59:44.7422165Z'},'datetime_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'timestamp_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'mediumblob_field':{'BYTES':'https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/picture.jpg'},'set_field':{'TEXT':'one'}}]" \ --trn true \ --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 AddRecords ^ --table "testtable" ^ --rows "[{'char_field':{'TEXT':'AAAAA'},'varchar_field':{'TEXT':'Some varchar'},'tinytext_field':{'TEXT':'Some tiny text'},'text_field':{'TEXT':'Some text'},'mediumtext_field':{'TEXT':'Some medium text'},'longtext_field':{'TEXT':'Some looooooong text'},'tinyint_field':{'INT':127},'smallint_field':{'INT':-32767},'mediumint_field':{'INT':8388607},'int_field':{'INT':-2147483647},'uint_field':{'UINT':4294967295},'bigint_field':{'INT':9223372036854775807},'float_field':{'FLOAT':100.50},'double_field':{'FLOAT':100.512123},'date_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'time_field':{'TIME':'2025-05-01T15:59:44.7422165Z'},'datetime_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'timestamp_field':{'DATE':'2025-05-01T15:59:44.7422165Z'},'mediumblob_field':{'BYTES':'https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/picture.jpg'},'set_field':{'TEXT':'one'}}]" ^ --trn true ^ --dbc "mysql://bayselonarrend:***@127.0.0.1:3306/" ^ --tls "{'use_tls':true,'accept_invalid_certs':true}" ``` ```json title="Result" { "commit": { "result": true }, "result": true, "rows": 1, "errors": [] } ```