---
sidebar_position: 5
description: Гарантировать таблицу и другие функции для работы с SQLite в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, SQLite]
---

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

# Гарантировать таблицу
 Создает новую таблицу в случае отсутствия или обновляет состав колонок существующей таблицы



`Функция ГарантироватьТаблицу(Знач Таблица, Знач СтруктураКолонок, Знач Соединение = "") Экспорт`

  | Параметр | CLI опция | Тип | Обяз. | Назначение |
  |-|-|-|-|-|
  | Таблица | --table | Строка | &#x2714; | Имя таблицы |
  | СтруктураКолонок | --cols | Структура Из КлючИЗначение | &#x2714; | Структура колонок: Ключ > имя, Значение > Тип данных |
  | Соединение | --db | Строка, Произвольный | &#x2716; | Существующее соединение или путь к базе |

  
  Возвращаемое значение:   Соответствие Из КлючИЗначение - Результат выполнения запроса

:::tip
В результате изменения структуры таблицы данные могут быть утеряны! Рекомендуется предварительно опробовать данный метод на тестовых данных

Данная функция не обновляет тип данных существующих колонок
:::
<br/>


```bsl title="Пример использования для 1С:Предприятие/OneScript"
    База = "C:\Users\bayse\AppData\Local\Temp\v8_2812_2c.sqlite";

    Таблица = "test";

    СтруктураКолонок = Новый Структура;
    СтруктураКолонок.Вставить("id"        , "INTEGER");
    СтруктураКолонок.Вставить("code"      , "INTEGER");
    СтруктураКолонок.Вставить("name"      , "TEXT");
    СтруктураКолонок.Вставить("age"       , "INTEGER");
    СтруктураКолонок.Вставить("info"      , "TEXT");

    Результат = OPI_SQLite.ГарантироватьТаблицу(Таблица, СтруктураКолонок, База);
```
    

 <Tabs>
  
    <TabItem value="bash" label="Bash" default>
        ```bash
            # JSON данные также могут быть переданы как путь к файлу .json
            
            oint sqlite ГарантироватьТаблицу \
              --table "test_new" \
              --cols "{'id':'INTEGER','code':'INTEGER','name':'TEXT','age':'INTEGER','info':'TEXT'}" \
              --db "/tmp/v2wq0bhr.dpw.sqlite"
        ```
    </TabItem>
  
    <TabItem value="bat" label="CMD/Bat" default>
        ```batch
            :: JSON данные также могут быть переданы как путь к файлу .json
            
            oint sqlite ГарантироватьТаблицу ^
              --table "test_new" ^
              --cols "{'id':'INTEGER','code':'INTEGER','name':'TEXT','age':'INTEGER','info':'TEXT'}" ^
              --db "/tmp/v2wq0bhr.dpw.sqlite"
        ```
    </TabItem>
</Tabs>


```json title="Результат"
{
 "result": true,
 "commit": {
  "result": true
 }
}
```
