4.2.3.3.1. SQL-запросы к таблицам данных

Для изменения оперативных значений используется запрос "UPDATE" к таблице nodes_values.
 
Например, запрос на изменение значения сигнала "NPS.BIK172_6.BB97n.Cmd" на значение "10" типа "integer" имеет вид:
UPDATE nodes_values SET valint=10 FROM nodes WHERE nodes.nodeid=nodes_values.nodeid AND nodes.TagName = 'NPS.BIK172_6.BB97n.Cmd'
Если новое значение сигнала не совпадает с типом сигнала, происходит попытка преобразования типа. Если преобразование невозможно, запрос завершается ошибкой.
 
Для вывода данных таблиц используется запрос "SELECT".
 
Например, запрос на получение текущего значения сигнала "NPS.BIK172" имеет вид:
SELECT * FROM nodes_values JOIN nodes ON nodes.NodeId = nodes_values.NodeId WHERE nodes.TagName='NPS.BIK172'
 
Запрос на получение истории значений сигнала "NPS.BIK172" имеет вид:
SELECT * FROM nodes_history JOIN nodes ON nodes.NodeId = nodes_history.NodeId WHERE nodes.TagName = 'NPS.BIK172'