Я думаю, у вас есть какая-то ошибка в провайдере .net.Я не смог воспроизвести его, используя ваш код (с немного поддельным запросом), но у меня есть серверная часть UniVerse, и хотя они очень похожи, они, безусловно, являются отличиями.
Тем не менее, в соответствии с Rocket * Использование UniDataSQL Синтаксис, который ДОЛЖЕН работать, - это то, что вы, кажется, пытались первыми.
select ID, ID NewID from SYS_INSTALL_HISTORY_NF where 1=0
Мне кажется странным то, что "Column0" происходит, скорее всего, от самого провайдера .net, а не от UniData.Это похоже на то, как запрос определил, сколько столбцов будет, но еще не присвоил им имена.Если бы это было правдой, я бы ожидал, что Запрос просто потерпит неудачу и будет выдано исключение.Вы не делаете никаких других исключений, ловящих на фактическом вызове, не так ли?Вы пробовали это с колонкой без идентификатора?
Вы можете обойти все это, добавив еще один элемент словаря, но это кажется тяжелым для чего-то, что должно работать.Я хотел бы поддержать это и посмотреть, что они думают.
Удачи.