AnyLogic
Развернуть
Размер шрифта

Запрос (Query)

Объект Запрос (Query) предоставляет возможность графического задания SQL запроса к базе данных. Запрос является основной операцией SQL, выполняющей извлечение данных из базы данных.

С помощью объекта Запрос (Query) вы можете наполнить модель данными, полученными в результате выполнения заданного этим объектом запроса. Результат выполнения запроса представляет собой ряд строк. Каждая строка содержит набор значений, извлеченных из заданных столбцов таблицы базы данных.

По результатам выполнения запроса вы можете создать:

Создание запроса

Чтобы создать запрос

  1. Перетащите элемент Запрос  из палитры Внешние данные на диаграмму агента (или эксперимента).
  2. В панели Свойства, задайте Имя этого элемента. Это имя будет использоваться для идентификации элемента и доступа к нему из кода.
  3. Укажите, с какой базой данных будет работать этот объект. Введите имя объекта AnyLogic База данных в поле База данных (вы можете пользоваться помощью мастера подстановки кода).
  4. Если вам нужно извлечь все данные из одной конкретной таблицы базы данных, перейдите в секцию свойств Запрос и выберите опцию Извлечь все данные из таблицы и укажите имя этой таблицы в поле справа.
  5. В противном случае, если вам нужно выполнить более сложный запрос, выберите опцию SQL и введите код вашего запроса в расположенном ниже поле.

Наполнение модели данными, считанными из базы данных

С помощью объекта Запрос (Query) вы можете наполнить модель данными, полученными в результате выполнения заданного этим объектом запроса. Результат выполнения запроса представляет собой ряд строк. Каждая строка содержит набор значений, извлеченных из заданных столбцов таблицы базы данных.

По результатам выполнения запроса вы можете создать:

Создание реплицированного объекта по результатам выполнения запроса

Чтобы добавлять новые элементы в реплицированный объект

  1. Выберите в графическом редакторе или в панели Проекты требуемый объект Запрос.
  2. Перейдите в секцию Наполнение данными панели Свойства.
  3. Установите флажок Для каждой строки добавлять.
  4. Выберите опцию Агент.
  5. Выберите тип агентов, в который вы хотите добавлять новые элементы, из выпадающего списка Популяция агентов.
  6. В расположенной ниже таблице установите соответствие между параметрами реплицированного объекта и столбцами запроса, из которых будут извлекаться значения этих параметров. Каждое соответствие параметра и столбца задается в отдельной строке таблицы. Укажите имя того параметра, значение которого будет инициализироваться из базы данных, в ячейке Параметр/Поле и введите имя столбца таблицы базы данных, из которого будут извлекаться данные, в ячейке Столбец.
  7. Если вы хотите произвести добавление новых элементов в реплицированный объект сразу при запуске модели, установите флажок Выполнять при запуске.

Создание коллекции по результатам выполнения запроса

Чтобы добавлять новые элементы в коллекцию

  1. Выберите в графическом редакторе или в панели Проекты требуемый объект Запрос.
  2. Перейдите в секцию Наполнение данными панели Свойства.
  3. Установите флажок Для каждой строки добавлять.
  4. Выберите опцию Элемент в коллекцию.
  5. Выберите коллекцию, в которую вы хотите добавлять новые элементы, из выпадающего списка Коллекция.
  6. В расположенной ниже таблице установите соответствие между полями коллекции и столбцами запроса, из которых будут извлекаться значения этих полей. Каждое соответствие поля и столбца задается в отдельной строке таблицы. Выберите то поле, значение которого будет инициализироваться из базы данных, в ячейке Параметр/Поле и введите имя столбца таблицы базы данных, из которого будут извлекаться данные, в ячейке Столбец.
  7. Если вы хотите произвести добавление новых элементов в коллекцию сразу при запуске модели, установите флажок Выполнить при запуске.
Как мы можем улучшить эту статью?