Класс InsertSelect

Сложный
PDF

Пространство имен Terrasoft.Core.DB.

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

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

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

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

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

InsertSelect(UserConnection userConnection)

Создает экземпляр класса с указанным UserConnection.

InsertSelect(InsertSelect source)

Создает экземпляр класса, являющийся клоном экземпляра, переданного в качестве аргумента.

Свойства 

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.

Методы 

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 Подзапрос.