Create table
Creates an empty table in the database
Function CreateTable(Val Table, Val ColoumnsStruct, Val Connection = "", Val Tls = "") Export
Parameter | CLI option | Type | Required | Description |
---|---|---|---|---|
Table | --table | String | ✔ | Table name |
ColoumnsStruct | --cols | Structure Of KeyAndValue | ✔ | Column structure: Key > Name, Value > Data type |
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
The list of available types is described on the initial page of the PostgreSQL library documentation
1C:Enterprise/OneScript code example
Address = "127.0.0.1";
Login = "bayselonarrend";
Password = "12we...";
Base = "testbase1";
TLS = True;
Port = 5432;
ConnectionString = OPI_PostgreSQL.GenerateConnectionString(Address, Base, Login, Password, Port);
If TLS Then
TLSSettings = OPI_PostgreSQL.GetTLSSettings(True);
Else
TLSSettings = Undefined;
EndIf;
Table = "testtable";
ColoumnsStruct = New Structure;
ColoumnsStruct.Insert("bool_field" , "BOOL");
ColoumnsStruct.Insert("oldchar_field" , """char""");
ColoumnsStruct.Insert("smallint_field" , "SMALLINT");
ColoumnsStruct.Insert("smallserial_field", "SMALLSERIAL");
ColoumnsStruct.Insert("int_field" , "INT");
ColoumnsStruct.Insert("serial_field" , "SERIAL");
ColoumnsStruct.Insert("oid_field" , "OID");
ColoumnsStruct.Insert("bigint_field" , "BIGINT");
ColoumnsStruct.Insert("bigserial_field" , "BIGSERIAL");
ColoumnsStruct.Insert("real_field" , "REAL");
ColoumnsStruct.Insert("dp_field" , "DOUBLE PRECISION");
ColoumnsStruct.Insert("text_field" , "TEXT");
ColoumnsStruct.Insert("varchar_field" , "VARCHAR");
ColoumnsStruct.Insert("charn_field" , "CHAR(3)");
ColoumnsStruct.Insert("char_field" , "CHAR");
ColoumnsStruct.Insert("name_field" , "NAME");
ColoumnsStruct.Insert("bytea_field" , "BYTEA");
ColoumnsStruct.Insert("ts_field" , "TIMESTAMP");
ColoumnsStruct.Insert("tswtz_field" , "TIMESTAMP WITH TIME ZONE");
ColoumnsStruct.Insert("ip_field" , "INET");
ColoumnsStruct.Insert("json_field" , "JSON");
ColoumnsStruct.Insert("jsonb_field" , "JSONB");
ColoumnsStruct.Insert("date_field" , "DATE");
ColoumnsStruct.Insert("time_field" , "TIME");
ColoumnsStruct.Insert("uuid_field" , "UUID");
// 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_PostgreSQL.CreateTable(Table, ColoumnsStruct, ConnectionString, TLSSettings);
- Bash
- CMD/Bat
oint postgres CreateTable \
--table ""somename"" \
--cols ""/tmp/2dto03k1.tzv.json"" \
--dbc "postgresql://bayselonarrend:***@127.0.0.1:5432/" \
--tls ""/tmp/ogop3dbf.slz.json""
oint postgres CreateTable ^
--table ""somename"" ^
--cols ""/tmp/2dto03k1.tzv.json"" ^
--dbc "postgresql://bayselonarrend:***@127.0.0.1:5432/" ^
--tls ""/tmp/ogop3dbf.slz.json""
Result
{
"result": true
}