---
sidebar_position: 4
description: Get table information and other functions to work with PostgreSQL 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, PostgreSQL]
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Get table information
 Gets information about the table



`Function GetTableInformation(Val Table, Val Connection = "", Val Tls = "") Export`

  | Parameter | CLI option | Type | Required | Description |
  |-|-|-|-|-|
  | Table | --table | String | &#x2714; | Table name |
  | Connection | --dbc | String, Arbitrary | &#x2716; | Connection or connection string |
  | Tls | --tls | Structure Of KeyAndValue | &#x2716; | TLS settings, if necessary. See GetTlsSettings |

  
  Returns:  Map Of KeyAndValue - Result of query execution



```bsl title="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";

    // 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.GetTableInformation(Table, ConnectionString, TLSSettings);
```
 

 <Tabs>
  
    <TabItem value="bash" label="Bash" default>
        ```bash
            # JSON data can also be passed as a path to a .json file
            
            oint postgres GetTableInformation \
             --table "test_new" \
             --dbc "postgresql://bayselonarrend:***@127.0.0.1:5432/" \
             --tls "{'use_tls':true,'accept_invalid_certs':true}"
        ```
    </TabItem>
  
    <TabItem value="bat" label="CMD/Bat" default>
        ```batch
            :: JSON data can also be passed as a path to a .json file
            
            oint postgres GetTableInformation ^
             --table "test_new" ^
             --dbc "postgresql://bayselonarrend:***@127.0.0.1:5432/" ^
             --tls "{'use_tls':true,'accept_invalid_certs':true}"
        ```
    </TabItem>
</Tabs>


```json title="Result"
{
 "data": [
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "bool_field",
   "data_type": "boolean",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "oldchar_field",
   "data_type": "\"char\"",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "smallint_field",
   "data_type": "smallint",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": "nextval('testtable_smallserial_field_seq'::regclass)",
   "column_name": "smallserial_field",
   "data_type": "smallint",
   "is_nullable": "NO"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "int_field",
   "data_type": "integer",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": "nextval('testtable_serial_field_seq'::regclass)",
   "column_name": "serial_field",
   "data_type": "integer",
   "is_nullable": "NO"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "oid_field",
   "data_type": "oid",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "bigint_field",
   "data_type": "bigint",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": "nextval('testtable_bigserial_field_seq'::regclass)",
   "column_name": "bigserial_field",
   "data_type": "bigint",
   "is_nullable": "NO"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "real_field",
   "data_type": "real",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "dp_field",
   "data_type": "double precision",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "jsonb_field",
   "data_type": "jsonb",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "date_field",
   "data_type": "date",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "time_field",
   "data_type": "time without time zone",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "uuid_field",
   "data_type": "uuid",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "numeric_field",
   "data_type": "numeric",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "bytea_field",
   "data_type": "bytea",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "ts_field",
   "data_type": "timestamp without time zone",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "tswtz_field",
   "data_type": "timestamp with time zone",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "ip_field",
   "data_type": "inet",
   "is_nullable": "YES"
  },
  {
   "character_maximum_length": null,
   "column_default": null,
   "column_name": "json_field",
   "data_type": "json",
   "is_nullable": "YES"
  },
  {
...
```
