2025-02-12 19:33:53 +03:00
|
|
|
---
|
2025-02-14 23:21:49 +03:00
|
|
|
sidebar_position: 5
|
2025-02-12 19:33:53 +03:00
|
|
|
---
|
|
|
|
|
|
|
|
|
|
import Tabs from '@theme/Tabs';
|
|
|
|
|
import TabItem from '@theme/TabItem';
|
|
|
|
|
|
|
|
|
|
# Create table
|
|
|
|
|
Creates an empty table in the database
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
`Function CreateTable(Val Table, Val ColoumnsStruct, Val Connection = "") 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 |
|
|
|
|
|
|
|
|
|
|
|
2025-02-17 17:16:27 +03:00
|
|
|
Returns: Map Of KeyAndValue - Result of query execution
|
2025-02-12 19:33:53 +03:00
|
|
|
|
|
|
|
|
<br/>
|
|
|
|
|
|
2025-02-15 19:36:59 +03:00
|
|
|
:::tip
|
|
|
|
|
The list of available types is described on the initial page of the PostgreSQL library documentation
|
|
|
|
|
:::
|
|
|
|
|
<br/>
|
2025-02-12 19:33:53 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```bsl title="1C:Enterprise/OneScript code example"
|
2025-02-17 17:16:27 +03:00
|
|
|
Address = "127.0.0.1";
|
2025-02-12 19:33:53 +03:00
|
|
|
Login = "bayselonarrend";
|
|
|
|
|
Password = "12we...";
|
|
|
|
|
Base = "testbase1";
|
|
|
|
|
|
|
|
|
|
ConnectionString = OPI_PostgreSQL.GenerateConnectionString(Address, Base, Login, Password);
|
|
|
|
|
|
|
|
|
|
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");
|
|
|
|
|
|
2025-02-15 22:58:22 +03:00
|
|
|
// 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()
|
2025-02-12 19:33:53 +03:00
|
|
|
Result = OPI_PostgreSQL.CreateTable(Table, ColoumnsStruct, ConnectionString);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|