Перейти к основному содержимому

Обновить записи

Обновляет значение записей по выбранным критериям

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

ПараметрCLI опцияТипОбяз.Назначение
Таблица--tableСтрокаИмя таблицы
СтруктураЗначений--valuesСтруктура Из КлючИЗначениеСтруктура значений: Ключ > поле, Значение > значение поля
Фильтры--filterМассив Из СтруктураМассив фильтров. См. ПолучитьСтруктуруФильтраЗаписей
Соединение--dbcСтрока, ПроизвольныйСоединение или строка подключения
Tls--tlsСтруктура Из КлючИЗначениеНастройки TLS, если необходимо. См. ПолучитьНастройкиTls

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


подсказка

Данные записей указываются как массив структур вида:
{'Имя поля 1': {'Тип данных': 'Значение'}, 'Имя поля 2': {'Тип данных': 'Значение'},...}

Список доступных типов описан на начальной странице документации библиотеки MSSQL


Пример использования для 1С:Предприятие/OneScript
    Адрес  = "127.0.0.1";
Логин = "SA";
Пароль = "12we...";
База = "test_data";

НастройкиTLS = OPI_MSSQL.ПолучитьНастройкиTls(Истина);
СтрокаПодключения = OPI_MSSQL.СформироватьСтрокуПодключения(Адрес, База, Логин, Пароль);

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

СтруктураПолей = Новый Структура;
СтруктураПолей.Вставить("ip_address", Новый Структура("VARCHAR", "127.0.0.1"));

Фильтры = Новый Массив;

СтруктураФильтра = Новый Структура;

СтруктураФильтра.Вставить("field", "gender");
СтруктураФильтра.Вставить("type" , "=");
СтруктураФильтра.Вставить("value", Новый Структура("NVARCHAR", "Male"));
СтруктураФильтра.Вставить("raw" , Ложь);

Фильтры.Добавить(СтруктураФильтра);

// При использовании строки подключения инициализируется новое соединение,
// которое будет закрыто после выполнения функции.
// В случае выполнения нескольких операций желательно использовать одно соединение,
// заранее созданное функцией ОткрытьСоединение()
Результат = OPI_MSSQL.ОбновитьЗаписи(Таблица, СтруктураПолей, СтруктураФильтра, СтрокаПодключения, НастройкиTLS);
    # JSON данные также могут быть переданы как путь к файлу .json

oint mssql ОбновитьЗаписи \
--table "test_data" \
--values "{'ip_address':{'VARCHAR':'127.0.0.1'}}" \
--filter "{'field':'gender','type':'=','value':{'NVARCHAR':'Male'},'raw':false}" \
--dbc "Server=127.0.0.1;Database=***;User Id=SA;Password=***;" \
--tls "{'use_tls':true,'accept_invalid_certs':true}"
Результат
{
"result": true
}