Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Вылет при соединении. Нужна помощь. (число прочтений - 1520 )
Den V.
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 2
Зарегистрирован: 17. Марта 2009
Вылет при соединении. Нужна помощь.
19. Апреля 2009 :: 12:37
Печать  
Пытаюсь соединяться с базой MySQL. Возможно что-то делаю не так, но через поиск не нашел.
Код
Выбрать все
Процедура Сформировать()

//1
Если ЗАгрузитьВнешнююКомпоненту("1cpp.dll") = 1 Тогда
	Сообщить("подключение компоненты");
Иначе
	Сообщить("Неудача подключения компоненты");
КонецЕсли;
//
База = СоздатьОбъект("ODBCDataBase");
ИмяDSN = "Test";
Если База.Соединение("DSN="+ИмяDSN+";") = 1 Тогда
	Сообщить("Соединение прошло успешно");
ИНаче
	Сообщить("ОШибка соединения "+База.ПолучитьОписаниеОшибки());
КонецЕсли;
//

КонецПроцедуры 



Во время попытки соединения 1С просто вылетает. Подпись ошибки:
AppName: 1cv7s.exe       AppVer: 7.70.0.25       ModName: myodbc5.dll
ModVer: 5.1.5.0       Offset: 00008609


Кнопка Test в ODBC драйвере (Иcточники данных - Системный DSN) отрабатывает нормально. И 1с и драйвер уже переустанавливал, строку подключения переписывал. Текущая версия драйвера ODBC 5.1, релиз 1С - 25, v. 1C++ 2.5.0.8.
Особенность: драйвер коннектится с localhost который создан через SSH-тунель.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Вылет при соединении. Нужна помощь.
Ответ #1 - 20. Апреля 2009 :: 03:48
Печать  
так еще при соединении надо задавать имя пользователя и пароль.
  
Наверх
 
IP записан
 
Den V.
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 2
Зарегистрирован: 17. Марта 2009
Re: Вылет при соединении. Нужна помощь.
Ответ #2 - 20. Апреля 2009 :: 04:19
Печать  
Я писал, что строку соединения переписывал по-разному.  Спасибо за помощь, решил проблему установкой драйвера ODBC 3.5, видимо с пятым не работает.
  
Наверх
 
IP записан
 
VoditelKobyly
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 22
Зарегистрирован: 13. Февраля 2009
Пол: Мужской
Re: Вылет при соединении. Нужна помощь.
Ответ #3 - 08. Июля 2009 :: 08:55
Печать  
Прошел приблизительно по такому же пути. Видел как вылетала 1С. Установил драйвер версии 3.51 все заработало.
Теперь другой вопрос к знатокам. При выборке данных с сервера через драйвер ODBC все функции MySQL работают? Почему то запрос типа:
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

работает, а запрос:

SELECT      LEFT(TIME(TIME),2) 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

уже не работает.
Такой же запрос в SQL менеджере работает.
У меня в таблице записаны данные по времени записи, надо сделать группировку по часам. Как преобразовать время в строку?
  
Наверх
 
IP записан
 
VoditelKobyly
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 22
Зарегистрирован: 13. Февраля 2009
Пол: Мужской
Re: Вылет при соединении. Нужна помощь.
Ответ #4 - 08. Июля 2009 :: 09:37
Печать  
В запросе вместо функции Left стал использовать Hour() и Minute()
HOUR(time)*100+MINUTE(time) и свою проблему решил. Но где бы глянуть какие функции в драйвере можно использовать, а какие нет, не знаю.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать