This is topic Вставка в текст запроса значений каналов in forum Работа в MS Windows (ODBC/DDE/OPC/NET) / Working under MS Windows at Форум TRACE MODE: техническая поддержка.
Приведите, пожалуйста, пример запроса в файле odbc.cfg ,чтобы в таблицу базы данных можно было передать значения каналов только в некоторые поля (не все одноименные сразу). В Help написано следующее: " В текст запроса можно вставить текущие значения каналов, имеющих подтип ПУСТОЙ и дополнение к подтипу SQL_where . Поле в тексте запроса, куда при выполнении последнего будет подставлено значение такого канала, обозначается символами #. Не занятые позиции этого поля заполняются пробелами ". Что-то я ничего не понял про эти символы и пробелы.
В системе ODBC настроено правильно, обмен ТМ5.15 с MySQL происходит (запрос типа "SQL2=INSERT INTO tab" работает нормально).
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Это означчает, что если в проекте есть канала подтипа ПУСТОЙ_SQL where, его настройки совпадают с каналом ПУСТОЙ_SQL выполнить, который в свою очередь выполняет запрос с указанием символов '#' в запросе, то вместо этих символов будет осуществлена подстановка значения канала ПУСТОЙ_SQL where. Имя этого канала должно совпадать с именем поля в условии с символами '#'. Например: есть запрос вида SELECT * FROM table WHERE ch_value=### В базе есть канал ПУСТОЙ_SQL where с именем ch_value и его значение =11, тогда запрос в итоге будет таким: SELECT * FROM table WHERE ch_value=11
Posted by Malinovsky (Участник № / Member № 981) on :
1.Про запросы на чтение из базы данных все понятно,но я спрашивал про передачу в таблицу?! (например, с помощью оператора INSERT INTO) 2.Сколько символов " # " нужно указывать в запросе или это не принципиально? 3.Что означает в Неlp " Не занятые позиции этого поля заполняются пробелами "?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1)2) При запросе INSERT INTO это не используется - система сама дополнит запрос именами полей и значениями для вставки из каналов ПУСТО_SQL для вставки. 3) Это и означает - если у Вас указано три символа ###, а число для вставки двузначное, то третий символ # заменится на пробел.