helpf.pro
Регистрация

v8: Ошибка при загрузке из MySQL в 1с

Valeryilich
18.12.2013 23:29Прочитано: 4230
Заранее извиняюсь, если вопрос очень глупый. Пытаюсь заполнить справочник в 1с из mysql.

Соединение = Новый COMОбъект("ADODB.Connection");
СтрокаСоединения="DRIVER=MySQL ODBC 5.2 Unicode driver; SERVER=localhost; PORT=3306; DATABASE=sportorganisations; UID=root; PWD=32813281;";




ТекстЗапроса="S_elect * from sportorganisations.sportsman";

Соединение.Open(СтрокаСоединения);
ЗаписиSQL = Новый COMОбъект("adodb.Recordset");

КомандаSQL = Новый COMObject("ADODB.Command");

КомандаSQL.ActiveConnection = Соединение;
КомандаSQL.CommandType = 4;
КомандаSQL.NamedParameters = True;
КомандаSQL.CommandText = ТекстЗапроса;
КомандаSQL.Prepared=Истина;

ЗаписиSQL = КомандаSQL.Execute();

Пока ЗаписиSQL.EOF() = 0 Цикл // Заполнение справочника
НовыйЭлемент = Справочники.Спортсмены.СоздатьЭлемент();

НовыйЭлемент.Код = ЗаписиSQL.fields("sportsman.idSportsman").value;
НовыйЭлемент.Фамилия = ЗаписиSQL.fields("sportsman.LastName").value;
НовыйЭлемент.Имя = ЗаписиSQL.fields("sportsman.FirstName").value;
НовыйЭлемент.Отчество = ЗаписиSQL.fields("sportsman.FathersName").value;
НовыйЭлемент.ДатаРождения = ЗаписиSQL.fields("sportsman.FathersName").value;

НовыйЭлемент.Записать();

ЗаписиSQL.MoveNext();
КонецЦикла;


ЗаписиSQL.Close();
Соединение.Close();


Ругается на строчку ЗаписиSQL = КомандаSQL.Execute(); , говорит следующее


{Справочник.Спортсмены.Форма.ФормаСписка.Форма(24)}: Ошибка при вызове метода контекста (Execute)
ЗаписиSQL = КомандаSQL.Execute();
по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [MySQL][ODBC 5.2(w) Driver][mysqld-5.5.23]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 'S_elect * from sportorganisations.sportsman' at line 1,

т.е. получается ошибка в тексте запроса? но это ж бред))) Причем выгрузить данные из 1С в данную базу получается без проблем.

До этого делала не с помощью ADODB.Command, а через метод Open у объекта RecordSet, т.е. строчка была такая ЗаписиSQL.Open('S_elect * from sportorganisations.sportsman', Соединение);
Тоже выдавало ошибку.
Версия MySQL - 5.5.23
Заранее спасибо, очень надеюсь на помощь
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
19.12.2013 17:13Ответ № 1
а в phpadmin или в HeidiSql тестил свой запрос к MySql?
Valeryilich
22.12.2013 11:35Ответ № 2
Тестила, тестила конечно. Все работает
Подсказка:Вы можете добавить любую страничку в Социальные закладки щелкнув по значку соцсетей (в вверху)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.