RUS  ENG 

sql запрос

Страницы: 1
RSS
sql запрос, update поля Zulu
 
Здравствуйте
Пишу в макросе sql запрос на обновление поля L (Длина участка). Не работает.
Set Ll = Zulu.ActiveMapDoc.Layers.Active
Ll.ExecSQL(UPD ATE @Ll SE T L=L_GIS WHERE typeid=6 and tplnr IN (SEL ECT tplnr FR OM @Ll GROUP BY tplnr HAVING COUNT(tplnr)>1))
Изменено: NickSv - 22.04.2025 08:18:49
 
NickSv, добрый день!
Параметр метода ExecSQL - строка с текстом запроса. Текстовые строки в VBScript должны заключаться в двойные кавычки.
 
Li.ExecSQL("UPDATE " & Ll.UserName & " SET L = L_GIS WHERE typeid=6 and tplnr IN (SEL ECT tplnr FR OM " & Ll.UserName & " GROUP BY tplnr HAVING COUNT(tplnr)>1) ") не работает
Изменено: NickSv - 22.04.2025 15:04:01
 
Цитата
NickSv написал:
Li.ExecSQL("UPDATE " & Ll.UserName & " SET L = L_GIS WHERE typeid=6 and tplnr IN (SEL ECT tplnr FR OM " & Ll.UserName & " GROUP BY tplnr HAVING COUNT(tplnr)>1) ") не работает

  1. Метод ExecSQL возвращает объект IZSqlResult (см. https://www.politerm.com/zuludoc/zuluax/index.html#Layer_ExecSQL.html). Свойство ErrorString помогает разобраться в ошибках, которые могут быть в запросе.
  2. Чисто визуально, у вас запрос выглядит с синтаксическими ошибками: имя слоя LI.UserName включается в текст запроса без квадратных скобок, используемых для обозначения имён объектов.
Страницы: 1