Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Ошибка:You have an error in your SQL syntax
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
korney777@gmail.com
Добрый день. Пытаюсь получить данные типа "DECIMAL" прямым запросом из MySQL и получаю ошибку: "Тип переменой не поддерживается"
price=Соединение.Execute("SELECT price FROM oc_product");
    Сообщить(price);
    Пока price.Eof()=0 Цикл
        Сообщить(Строка(price.Fields.Item("price").value));
        price.MoveNext();
    КонецЦикла;


Попытки использовать варианты:
Соединение.Execute("SELECT CAST(price AS Mony) FROM oc_product"); - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Varchar) FROM oc_product'
Соединение.Execute("SELECT CAST(price AS Varchar) FROM oc_product"); - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Varchar) FROM oc_product'
Соединение.Execute("SELECT CONVERT(price, CHAR) FROM oc_product"); - В коллекции не удается найти элемент, соответствующий требуемому имени или порядковому номеру.


 ! 

необходимо зарегистрироваться для просмотра ссылки: 5
 
Vofka
Может

price.Fields.Item(0).value


?
korney777@gmail.com
Vofka @ Сегодня, 14:48 необходимо зарегистрироваться для просмотра ссылки ,
Не работает. Текст ошибки:
OLE._Recordset
Сообщить(Строка(price.Fields.Item(0).value));
{Обработка.ОбменМагазин.Форма.Модуль(31)}: Тип переменой не поддерживается
awp
Не знаю играет ли роль .MoveFirst(); перед перебором. У меня во всех выборках стоит. Попробуйте.
logist
Цитата(awp @ 01.02.18, 18:20) необходимо зарегистрироваться для просмотра ссылки
Не знаю играет ли роль .MoveFirst()

Не играет. Это перемещение "курсора" в первую позицию.

А по ошибке, скорее из базы decimal надо получать как float
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.