Creatio development guide
PDF
Это документация Creatio версии 7.16.0. Мы рекомендуем использовать новую версию документации.

Класс Insert Select

Glossary Item Box

Общие сведения

Класс Terrasoft.Core.DB.InsertSelect предназначен для построения запросов на добавление записей в таблицы базы данных Creatio. При этом в качестве источника добавляемых данных используется экземпляр класса Terrasoft.Core.DB.Select (см. "Получение информации из базы данных. Класс Select"). В результате создания и конфигурирования экземпляра Terrasoft.Core.DB.InsertSelect будет построен запрос базу данных приложения в виде SQL-выражения INSERT INTO SELECT.

При работе с классом InsertSelect на добавленные записи не применяются права доступа по умолчанию. К таким записям не применены вообще никакие права приложения (по операциям на объект, по записям, по колонкам). Пользовательское соединение используется только для доступа к таблице базы данных.

После выполнения запроса InsertSelect в базу данных будет добавлено столько записей, сколько вернется в его подзапросе Select.

Класс Terrasoft.Core.DB.InsertSelect

Полный перечень методов и свойств класса InsertSelect, его родительских классов, а также реализуемых им интерфейсов, можно найти в документации ".NET библиотеки классов ядра платформы".

Конструкторы

public InsertSelect((UserConnection userConnection))
Создает экземпляр класса с указанным UserConnection.
public InsertSelect((InsertSelect source))
Создает экземпляр класса, являющийся клоном экземпляра, переданного в качестве аргумента.

Свойства

Табл. 1. — Основные свойства класса

UserConnection
Terrasoft.Core.UserConnection
Пользовательское подключение, используемое при запросе.
Source
Terrasoft.Core.DB.ModifyQuerySource
Источник данных
Parameters
Terrasoft.Core.DB.QueryParameterCollection
Коллекция параметров запроса.
HasParameters
bool
Определяет, имеет ли запрос параметры.
BuildParametersAsValue
bool
Определяет, добавлять ли параметры запроса в текст запроса как значения.
Columns
Terrasoft.Core.DB.ModifyQueryColumnValueCollection
Коллекция значений колонок запроса.
Select
Terrasoft.Core.DB.Select
Используемый в запросе экземпляр Terrasoft.Core.DB.Select.

Методы

Табл. 2. — Основные методы класса

string GetSqlText(())
Возвращает SQL-текст запроса.
void BuildSqlText((StringBuilder sb))
Формирует текст запроса при помощи экземпляра StringBuilder.
void ResetCachedSqlText(())
Очищает кэшированный текст запроса.
QueryParameterCollection GetUsingParameters(())
Возвращает коллекцию параметров, используемых запросом.
void ResetParameters(())
Очищает коллекцию параметров запроса.
void SetParameterValue((string name, object value))

Устанавливает значение для параметра запроса.

Параметры:

  • name — название параметра;
  • value — значение.

void InitializeParameters(())
Инициализирует коллекцию параметров запроса.
int Execute(())
Выполняет запрос. Возвращает количество задействованных запросом записей.
int Execute((DBExecutor dbExecutor))
Выполняет запрос, используя экземпляр DBExecutor. Возвращает количество задействованных запросом записей.
InsertSelect Into((string schemaName))
InsertSelect Into((ModifyQuerySource source))

Добавляет в текущий запрос источник данных.

Параметры:

  • schemaName — название схемы;
  • source — источник данных.

InsertSelect Set((IEnumerable<string> sourceColumnAliases))
InsertSelect Set((params string[] sourceColumnAliases))
InsertSelect Set((IEnumerable<ModifyQueryColumn> columns))
InsertSelect Set((params ModifyQueryColumn[] columns))

Добавляет в текущий запрос набор колонок, в которые будут добавлены значения с помощью подзапроса. Возвращает текущий экземпляр InsertSelect.

Параметры:

  • sourceColumnAliases — коллекция или массив параметров метода, содержащие псевдонимы колонок;
  • columns — коллекция или массив параметров метода, содержащие экземпляры колонок.

InsertSelect FromSelect((Select subSelect))
InsertSelect FromSelect((Query subSelectQuery))

Добавляет в текущий запрос предложение SELECT.

Параметры:

  • subSelect — подзапрос на выборку;
  • subSelectQuery — подзапрос.

Смотрите также:

© Terrasoft 2002-2020.

Был ли данный материал полезен?

Как можно улучшить эту статью?