Гарантировать таблицу
Создает новую таблицу в случае отсутствия или обновляет состав колонок существующей таблицы
Функция ГарантироватьТаблицу(Знач Таблица, Знач СтруктураКолонок, Знач Соединение = "", Знач Tls = "") Экспорт
Параметр | CLI опция | Тип | Обяз. | Назначение |
---|---|---|---|---|
Таблица | --table | Строка | ✔ | Имя таблицы |
СтруктураКолонок | --cols | Структура Из КлючИЗначение | ✔ | Структура колонок: Ключ > имя, Значение > Тип данных |
Соединение | --dbc | Строка, Произвольный | ✖ | Существ ующее соединение или путь к базе |
Tls | --tls | Структура Из КлючИЗначение | ✖ | Настройки TLS, если необходимо. См. ПолучитьНастройкиTls |
Возвращаемое значение: Соответствие Из КлючИЗначение - Результат выполнения запроса
подсказка
В результате изменения структуры таблицы данные могут быть утеряны! Рекомендуется предварительно опробовать данный метод на тестовых данных
Данная функция не обновляет тип данных существующих колонок
Пример использования для 1С:Предприятие/OneScript
Адрес = "127.0.0.1";
Логин = "SA";
Пароль = "12we...";
База = "testbase1";
Таблица = "testtable";
НастройкиTLS = OPI_MSSQL.ПолучитьНастройкиTls(Истина);
СтрокаПодключения = OPI_MSSQL.СформироватьСтрокуПодключения(Адрес, База, Логин, Пароль);
СтруктураКолонок = Новый Структура;
СтруктураКолонок.Вставить("smallint_field" , "smallint");
СтруктураКолонок.Вставить("double_field" , "real");
СтруктураКолонок.Вставить("bigint_field" , "bigint");
СтруктураКолонок.Вставить("custom_field" , "nvarchar");
// При использовании строки подключения инициализируется новое соединение,
// которое будет закрыто после выполнения функции.
// В случае выполнения нескольких операций желательно использовать одно соединение,
// заранее созданное функцией ОткрытьСоединение()
Результат = OPI_MSSQL.ГарантироватьТаблицу(Таблица, СтруктураКолонок, СтрокаПодключения, НастройкиTLS);
- Bash
- CMD/Bat
# JSON данные также могут быть переданы как путь к файлу .json
oint mssql ГарантироватьТаблицу \
--table "testtable" \
--cols "{'smallint_field':'smallint','double_field':'real','bigint_field':'bigint','custom_field':'nvarchar'}" \
--dbc "Server=127.0.0.1;Database=***;User Id=SA;Password=***;" \
--tls "{'use_tls':true,'accept_invalid_certs':true}"
:: JSON данные также могут быть переданы как путь к файлу .json
oint mssql ГарантироватьТаблицу ^
--table "testtable" ^
--cols "{'smallint_field':'smallint','double_field':'real','bigint_field':'bigint','custom_field':'nvarchar'}" ^
--dbc "Server=127.0.0.1;Database=***;User Id=SA;Password=***;" ^
--tls "{'use_tls':true,'accept_invalid_certs':true}"
Результат
{
"result": true,
"commit": {
"result": true
}
}