Имя: Пароль:
1C
1C 7.7
v7: не могу выполнить SQL запрос к базе MYSQL
0 fantomask
 
04.08.11
05:28
СтрокаКоннекта = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;USER = scale;DATABASE=scale;PASSWORD = scale;OPTION=3;";
   Connection = СоздатьОбъект("ADODB.Connection");
   Connection.Open(СтрокаКоннекта);
Запись = Connection.execute("Select * from weighing where Invoice = 123 LIMIT 1");
   Если не (Запись.EOF()=0) Тогда
       СоздатьТТН(Connection);
   Иначе
       Пока Запись.EOF()=0 Цикл
       
       Вес1 = Запись.Fields("W1").Value;
       Вес2 = Запись.Fields("W2").value;
       ДатаВъезда = Запись.Fields("DataW1").value;
       ДатаВыезда = Запись.Fields("DataW2").value;
       КОнецЦикла;
   КонецЕсли;    

Значения Запись.Fields("W1").Value возвращает "неопределенно", Запрос правильный, проверял.
1 VoditelKobyly
 
04.08.11
06:31
У меня с драйвером 5-й версии тоже не получалось. Скачай 3.51
Я делаю так:
   DataBase = СоздатьОбъект("ODBCDatabase");
   Если DataBase.Соединение("DRIVER={MySQL ODBC 3.51 Driver}; SERVER="+id_server+"; DATABASE="+id_database+"; USER="+id_user+"; PASSWORD="+id_password+"; OPTION=3;") = 0 Тогда
       СообщитьС("Неудалось подключиться к базе сайта, проверьте наличие драйвера, адрес сервера и наличие связи!!!", "!!!");
   КонецЕсли;
   рс = СоздатьОбъект("ODBCRecordset");
   рс.SetDatabase(DataBase);
   ТекстЗапроса="
   |SELECT
     |    TIME as Hour,
     |    ROUND(SUM(bytes)*11/3600/1024/1024,3) as MBit
   |FROM collected
   |WHERE date BETWEEN CAST(:НачДата as DATE) AND CAST(:КонДата as DATE)
   |GROUP by Hour
   |";  
   рс.УстановитьТекстовыйПараметр("НачДата", ВыбНачПериода);
   рс.УстановитьТекстовыйПараметр("КонДата", ВыбКонПериода);
   
   Табл=РС.ВыполнитьИнструкцию(ТекстЗапроса);
   рс.Закрыть();
   DataBase.Закрыть();
2 fantomask
 
04.08.11
08:37
А для объекта ODBCDatabase какаю компоненту нужно установить?
3 Ёпрст
 
04.08.11
08:43
(2)
1cpp.dll
4 План счетов
 
04.08.11
08:58
Для 7.7 попробуй v7mysql.dll
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший