This is topic Групповая запись в БД: лишь одна запись за цикл? in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001607.html

Posted by Olexander (Участник № / Member № 7774) on :
 
При выполнении группового чтения столбцов из БД по схеме

CALL_SQLQuery.ARG_0 --> CALL_ChGroupReq#0.R
CALL_SQLQuery.ARG_1 --> CALL_ChGroupReq#1.R
...

команда выполняется за один цикл основного потока. В аргументах каналов CALL_ChGroupReq сразу доступны все считанные значения из БД.

Когда же я пытаюсь произвести групповую запись по аналогичной схеме

CALL_SQLQuery.ARG_0 --> CALL_ChGroupReq#0.R
CALL_SQLQuery.ARG_1 --> CALL_ChGroupReq#1.R
... ,
где

CALL_ChGroupReq#0.ARG_0 --> <Числовой канал#0>.R
CALL_ChGroupReq#0.ARG_1 --> <Числовой канал#1>.R
CALL_ChGroupReq#0.ARG_2 --> <Числовой канал#2>.R
... ,

CALL_ChGroupReq#1.ARG_0 --> <Числовой канал#3>.R
CALL_ChGroupReq#1.ARG_1 --> <Числовой канал#4>.R
CALL_ChGroupReq#1.ARG_2 --> <Числовой канал#5>.R
... ,

и подаю в CALL_SQLQuery.In, число, равное количеству желаемых записей, то у меня за один цикл CALC заносится лишь одна запись.
Инструмент перенаправления архива в БД говорит мне о том, что принципиально возможно за один цикл монитора занести сразу несколько строк в БД. Пожалуйста, подскажите, как мне ускорить групповую запись, выполняемую по стандартному механизму SQL-команд (INSERT), не изменяя при этом цикл пересчета монитора?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Действующий механизм групповой записи реализует последовательную построчную запись.
Чаще, чем 1 строка за цикл CALL.SQL - нельзя.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2