MS SQL Server
Этот раздел посвящен библиотеке для работы с базами данных MSSQL в 1С:Предприятие, OneScript и CLI. На данной странице описаны все действия, необходимые для полноценного начала работы
Пожалуйста, ознакомьтесь с разделом "О внешних компонентах" перед началом работы
Узнать больше: "Об использовании OpenSSL во внешних компонентах"
О реализованных методах
Данная библиотека состоит из двух частей: основных методов, вроде подключения и выполнения SQL-запросов, и небольшой ORM для часто встречающихся операций, вроде CREATE, SELECT, INSERT, DELETE и пр. Работа через ORM и через тексты запросов, выполняемые функцией ВыполнитьЗапросSQL(), технически не отличается: ORM просто формирует текст SQL-запроса на основе макетов, но далее также выполняет их этой функцией
По умолчанию, все запросы SELECT возвращают массив выбранных данных, а остальные запросы - только true в поле result при успехе, либо false и текст ошибки в полях result и error соответственно. Для выполнения запросов, требующих возврата данных, но не являющихся запросами SELECT, в функции ВыполнитьЗапросSQL() есть параметр ФорсироватьРезультат
Параметры запросов
Коннектор MSSQL поддерживает использование позиционных параметров. Все значения, передаваемые как при прямом выполнении запросов через функцию ВыполнитьЗапросSQL(), так и в ORM методах с установкой значений, вроде ДобавитьЗаписи и ОбновитьЗаписи, должный представлять из себя структуру вида {'Тип данных': 'Значение'}. Поддерживаются следующие типы данных*:
* В перечне типов MSSQL перечислены только некоторые подходящие типы
| Имя типа (ключ структуры) | Тип значения 1С | Подходит для типов MSSQL |
|---|---|---|
| TINYINT | Число | tinyint |
| SMALLINT | Число | smallint |
| INT | Число | int |
| BIGINT | Число | bigint |
| FLOAT24 | Число | float(24), real |
| FLOAT53 | Число | float(53) |
| NUMERIC | Число | decimal, numeric |
| DECIMAL | Числ о | decimal, numeric |
| BIT | Булево | bit |
| NVARCHAR | Строка | nvarchar, varchar, nchar, char, ntext, text |
| UUID | Строка, УникальныйИдентификатор | uniqueidentifier |
| XML | Строка | xml |
| DATE | Дата, Строка | date |
| TIME | Дата, Строка | time |
| DATETIME | Дата, Строка | datetime, datetime2 |
| DATETIMEOFFSET | Дата, Строка | datetimeoffset |
| BYTES | ДвоичныеДанные | varbinary |
Получение двоичных данных
Двоичные данные при получении из БД будут представлены как объект (структура) вида {"BYTES": "Base64 строка"} и должны быть преобразованы из Base64 вручную
TLS
Библиотека поддерживает работу в режиме TLS. Для его включения необходимо сформировать настройки TLS при помощи функции ПолучитьНастройкиTls, и передать их как соответствующий параметр в функцию ОткрытьСоединение или одну из функций ORM, поддерживающих данный параметр. Если параметр TLS при вызове этих функций не передан, соединение инициализируется в незащищенном режиме
Настройки Tls могут быть установлены только в момент создания соединения: явного, при использовании функции ОткрытьСоединение или неявного, при передаче строки подключения в методы ORM.
Передача настроек Tls совместно с передачей уже созданного соединения в параметр Соединение будет проигнорирована