AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.08.2014, 18:06   #13  
dax_ is offline
dax_
Участник
 
7 / 10 (1) +
Регистрация: 27.08.2014
Спасибо всем участникам обсуждения за дельные предложения. Получилось достучаться к БД MySQL по ODBC через .Net компоненту:
X++:
static public void Main(Args _args)
{

    System.Exception                    e;
    System.Data.Odbc.OdbcConnection     objConn;


    System.Data.Odbc.OdbcCommand        cmdSelect;
    System.Data.Odbc.OdbcDataReader     reader;
    InteropPermission                   perm;

    str exceptionStr, connectStr;
    ;
   
    connectStr = "Driver={MySQL ODBC 3.51 Driver};Server=myserver;Database=mydatabase;User=root;Password=123;Option=3;";
    try
    {
        perm = new InteropPermission(InteropKind::ClrInterop);
        if (perm == null)
        {
            throw error("Error with file permissions");
        }
        perm.assert();
        objConn = new System.Data.Odbc.OdbcConnection(connectStr);
        objConn.Open();
        cmdSelect   = objConn.CreateCommand();
        cmdSelect.set_CommandText("SELECT * FROM table");
        reader      = cmdSelect.ExecuteReader();
        while (reader.Read())
        {
            info(reader.GetString(0));
        }
    }
    catch(Exception::CLRError)
    {
        CodeAccessPermission::revertAssert();
        perm = new InteropPermission(InteropKind::ClrInterop);
        if (perm == null)
        {
            return;
        }
        perm.assert();
        e = ClrInterop::getLastException();
        CodeAccessPermission::revertAssert();
        while( e )
        {
            exceptionStr += e.get_Message();
            e = e.get_InnerException();
        }
        info(exceptionStr);
    }
    catch
    {
        error("An Exception has occurred");
    }
    if(objConn)
        objConn.Close();

}
Правда данный код у меня работает ТОЛЬКО с 32-битной версией драйвера MySQL ODBC 3.51.06.

Оба драйвера версии 3.51.30 (32-битный и 64-битный) пока молчат. Будут результаты - отпишусь.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
DAX: Microsoft Dynamics AX 2012 R3 is now available! Blog bot DAX Blogs 1 02.05.2014 23:00
DAX: Microsoft Dynamics AX 2012 R3 global online launch event: April 10, 2014 Blog bot DAX Blogs 0 19.03.2014 07:11
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02
emeadaxsupport: Final Microsoft Dynamics AX 2012 R2 Content Available! Blog bot DAX Blogs 0 04.12.2012 06:12
dynamics-community.at: Dynamics AX 2012 Trainings Blog bot DAX auf Deutsch 0 19.06.2012 18:11

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:43.