Skip to main content

Create table

Creates an empty table in the database

Function CreateTable(Val Table, Val ColoumnsStruct, Val Connection = "", Val Tls = "") Export

ParameterCLI optionTypeRequiredDescription
Table--tableStringTable name
ColoumnsStruct--colsStructure Of KeyAndValueColumn structure: Key > Name, Value > Data type
Connection--dbcString, ArbitraryConnection or connection string
Tls--tlsStructure Of KeyAndValueTLS settings, if necessary. See GetTlsSettings

Returns: Map Of KeyAndValue - Result of query execution


tip

The list of available types is described on the initial page of the MySQL library documentation


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

ColoumnsStruct = New Structure;
ColoumnsStruct.Insert("char_field" , "CHAR(5)");
ColoumnsStruct.Insert("varchar_field" , "VARCHAR(255)");
ColoumnsStruct.Insert("tinytext_field" , "TINYTEXT");
ColoumnsStruct.Insert("text_field" , "TEXT");
ColoumnsStruct.Insert("mediumtext_field", "MEDIUMTEXT");
ColoumnsStruct.Insert("longtext_field" , "LONGTEXT");
ColoumnsStruct.Insert("tinyint_field" , "TINYINT");
ColoumnsStruct.Insert("smallint_field" , "SMALLINT");
ColoumnsStruct.Insert("mediumint_field" , "MEDIUMINT");
ColoumnsStruct.Insert("int_field" , "INT");
ColoumnsStruct.Insert("uint_field" , "INT UNSIGNED");
ColoumnsStruct.Insert("bigint_field" , "BIGINT");
ColoumnsStruct.Insert("float_field" , "FLOAT");
ColoumnsStruct.Insert("double_field" , "DOUBLE");
ColoumnsStruct.Insert("date_field" , "DATE");
ColoumnsStruct.Insert("time_field" , "TIME");
ColoumnsStruct.Insert("datetime_field" , "DATETIME");
ColoumnsStruct.Insert("timestamp_field" , "TIMESTAMP");
ColoumnsStruct.Insert("mediumblob_field", "MEDIUMBLOB");
ColoumnsStruct.Insert("set_field" , "SET('one','two','three')");

// 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.CreateTable(Table, ColoumnsStruct, ConnectionString);
    # JSON data can also be passed as a path to a .json file

oint mysql CreateTable \
--table "testtable" \
--cols "{'char_field':'CHAR(5)','varchar_field':'VARCHAR(255)','tinytext_field':'TINYTEXT','text_field':'TEXT','mediumtext_field':'MEDIUMTEXT','longtext_field':'LONGTEXT','tinyint_field':'TINYINT','smallint_field':'SMALLINT','mediumint_field':'MEDIUMINT','int_field':'INT','uint_field':'INT UNSIGNED','bigint_field':'BIGINT','float_field':'FLOAT','double_field':'DOUBLE','date_field':'DATE','time_field':'TIME','datetime_field':'DATETIME','timestamp_field':'TIMESTAMP','mediumblob_field':'MEDIUMBLOB','set_field':'SET(\u0027one\u0027,\u0027two\u0027,\u0027three\u0027)'}" \
--dbc "mysql://bayselonarrend:***@127.0.0.1:3306/" \
--tls "{'use_tls':true,'accept_invalid_certs':true}"
Result
{
"result": true
}