Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Execute Sql Statement Version 10 (Java)

Группа действий: Базы данных

Описание

Выполняет запрос на получение данных из таблицы. 

Иконка действия

Image Removed

Параметры

Входные параметры

  1. Контекст БД Контекст подключения к выбранной базе данных.

  2. Шаблон запроса – Текст запроса, который будет выполняться.

  3. Список параметров – Параметры, которые будут подставляться в шаблон запроса.

  4. С заголовком – Логическая переменная, если значение которой «true», строка с заголовком таблицы будет выделена отдельно и не будет входить в строки с содержимым таблицы.

  5. Убрать дубли заголовка – Логическая переменная, если значении которой «true», в заголовке табличного значения, которое действия возвращают как результат, к одинаковым названиям столбцов будут добавлены индексы.

Выходные параметры

В результате получаем результирующую таблицу работы запроса

Настройки

Action group: Databases

...

Description

Executes a query to retrieve data from a table. 

Action icon

Image Added

Settings of parameters

PropertyDescriptionTypeFilling exampleMandatory field
Parameters
DB contextConnection context to the selected databaseRobin.DbContextDatabase contextYes
Query templateQuery templateRobin.String
Yes
Parameters listA collection of parameter values to be substituted into a queryRobin.Collection
No
With headerIf the value is «true», the row with the table header will be rendered separately and will not be included in the rows with the contents of the table

Свойство

Описание

Тип

Пример заполнения

Обязательность заполнения поля

Параметры

Контекст БД

Контекст подключения к выбранной базе данных

Robin.DbContext

Контекст баз данных

Да

Шаблон запроса

Шаблон запроса

Robin.String

Да

Список параметров

Коллекция значений параметров для подстановки в запрос

Robin.Collection

Нет

С заголовком

Если значение «true», строка с заголовком таблицы будет выделена отдельно и не будет входить в строки с содержимым таблицы
.Robin.Booleantrue

Нет

Убрать дубли заголовка

При значении «true», в заголовке табличного значения, которое действия возвращают как результат, к одинаковым названиям столбцов будут добавлены индексы. Нумерация начинается с
No
Rename duplicate headersIf the value is «true», in the header of the table value that the actions return as a result, indexes will be added to the same column names. Numbering starts from 1.Robin.BooleantrueNo
Нет
Results
Результаты

Результат

Результат выполнения запроса в виде таблицы. Если результатом является выборка данных, то результирующая таблица с данной выборкой данных. Если результатом является число затронутых строк, то результирующая таблица имеет один столбец „update_count“ и одну строку, содержащаю число затронутых строк.

Robin.DataTable

...

ResultStatement execution result as a data tableRobin.DataTable

Special conditions of use

This action executes the query. The Call Stored Procedure action is used to execute stored procedures.

Parameters are set via "Parameter list". Do not insert them into the body of the request - this leads to errors.

For the

...

Для чекбокса "Rename duplicate headers" checkbox:

  • Есть таблицаThere is a table:

    При With "Rename duplicate headers" = true, и and "With header" = True, действие the "Execute Sql Statement" вернет таблицу из 4х строк и 5 столбцов. Названия столбцов этой таблицы будутaction will return a table of 4 rows and 5 columns. The column names of this table will be:
    "Тест31Test31", "Тест21", "Тест22", "Тест32", "Тест1".
    ‘Test21’, ‘Test22’, ‘Test32’, ‘Test1’.
  • If false, the column names will remain the same. Actions on net that return/process such tables with duplicated column names will crash with an error, because net cannot have a header with the same column names.
  • For example, the source table has columns
  • При значении "false", названия столбцов останутся прежними. Действия на net, которые возвращают\обрабатывают такие таблицы с задублированными названиями столбцов, будут падать с ошибкой, т.к. в net не может быть заголовка с одинаковыми названиями столбцов.
  • Например, в исходной таблице есть столбцы "Test1", "Test" и and "Test". Если добавлять индексы только к текущим дублям, то названия станут такими If we add indexes only to the current doubles, the names will become "Test1", "Test1" и and "Test2", тi.е. в итоге появятся новые дубли с названием e. new doubles with the name "Test1" . Поэтому действие при переименовании конкретного столбца должно проверять, нет ли уже такого названия у другого столбца и при наличии таких совпадений проставлять у текущего столбца следующий по счету индекс. Т.е. в данном случае действие переименует столбцы как will appear. Therefore, when renaming a particular column, the action should check if another column already has such a name and if there is such a match, the current column should have the next index. That is, in this case the action will rename the columns as "Test1", "Test2" и and "Test3".

Пример использования 

Задача

Example of use  

Task

Query the database and save the result to a CSV table. Query the developer name with Cделать запрос к базе данных и сохранить результат в таблицу CSV. Запросить имя разработчика с ID=1. 

Решение

Solution

Use the actions Воспользоваться действиями "Connect Standard Db", "Execute Sql Statement", "Table to CSV". 

Реализация

Implementation

  1. Assemble a robot scheme consisting of actionsСобрать схему робота, состоящую из действий:


  2. Настроить параметры для действия "Стандартное подключение"Set the parameters for the "Connect Standard Db" action

    Настроить параметры для действия "Выполнить запрос". В поле "Контекст БД" указать контекст подключения к базе данных. В поле "Шаблон запроса" указать SQL выражение (запрашиваем имя разработчика с ID=1). Оно может содержать знаки вопросов, как в данном случае. И тогда должно быть заполнено поле "Список параметров". 

    Image Removed

    Эти параметры будут подставлены вместо знаков вопросов. В полях указываются следующие данные:

    1. name - наименование столбца

    2. DBName - наименование базы данных
    3. dbo - не изменяется
    4. TableName - наименов таблицы в базе данных
    Image Removed
    Заполненный пример:
    Image Removed
    При поставлении чекбокса "With header":
    Image Removed
    Чекбокс "With header" не проставлен:
    Image Removed
    Настроить параметры для действия "Сохранить таблицу в CSV". 
    Image Removed
  3. Запустить робота по кнопке "Старт" в верхней панели. 

Результат

Программный робот отработал успешно.

Image Removed


  1. Configure parameters for the "Execute Sql Statement" action. In the "DB context" field specify the context of connection to the database. In the "Query template" field, specify the SQL expression (request the developer's name with ID=1). It may contain question marks, as in this case. And then the "Parameters list" field must be filled in. 

    Image Added

    These parameters will be substituted in place of the question marks. The fields contain the following data:

    1. name - column name
    2. DBName - database name
    3. dbo - does not change
    4. TableName - name of the table in the database
    Image Added

    Completed example:
    Image Added

    When the "With header" checkbox is checked:
    Image Added

    The "With header" checkbox is not checked:
    Image Added

  2. Set the parameters for the "Table to CSV" action. 
    Image Added

  3. Launch the robot using the "Start" button in the top panel. 

Result

The program robot completed successfully.

Image Added

Data from the database is retrieved and written to a CSV tableДанные из базы получены и записаны в таблицу CSV