Войти
1c Установка подключения к MySQL через ODBC connector

  0    0 
29.05.2019 | kievol | 1448

Руководство, облегчающее жизнь при очередной настройке подключения MySQL к 1С через ODBC connector (driver). Оставлю это хотя бы для себя на память :)

Итак, для того, чтобы настроить связь между MySQL и 1С нужно:

1. Скачать дистрибутив установки ODBC connector.

Я обычно пользуюсь ODBC 5.3 Unicode driver, он еще называется 5.3.0 alpha, скачать можно здесь https://downloads.mysql.com/archives/c-odbc/).

Устанавливать нужно на сервер, на котором лежит база данных. То есть, если в пути к базе написано "10.80.11.30", то и устанавливаем на сервер 10.80.11.30, если в пути к базе написано "localhost", то и устанавливаем на этот же сервер "localhost", ну вы понимаете.

Если в процессе установки возникает ошибка "Error 1318:Error installing ODBC Driver ....... the specified module could not be found ... myodbc5s.d ...", значит на сервере не хватает пакета "Microsoft Visual C++ 2010 Redistributable Package", скачать можно здесь https://www.microsoft.com/en-us/download/confirmation.aspx?id=14632 (x64) и здесь https://www.microsoft.com/en-us/download/confirmation.aspx?id=5555 (x86). Если вы взяли версию драйвера отличную от моей любимой ODBC 5.3 Unicode driver, то пакет, необходимый для установки ODBC может быть и другой, ориентируйтесь на название недостающего компонента в описании ошибки, и вы обязательно найдете какого именно пакета Microsoft Visual C++ вам не хватает. Пакет Microsoft Visual C++ нужно тоже установить и для 32-х разрядной системы, и для 64-х разрядной.

2. Настроить ODBC connector.

Для работы с базами данных часто используют псевдонимы (alias). Псевдоним БД - это имя некоторой базы данных, которое прописывается в настойках таким образом, что для обращения к таблицам данной базы достаточно указать alias. Это удобство позволяет легко менять тип БД, не меняя текста программ. Рассмотрим принцип определения псевдонима БД Microsoft Access, хранящейся в файле db.mdb на сервере. Предположим, мы хотим, чтобы псевдоним db соответствовал данной БД. Для этого необходимо запустить Администратор источников данных ODBC (Пуск \ Настройка \ Панель управления \ Администрирование \ Источники данных (ODBC)):

Далее, в разделе "Системный DSN" следует добавить новый псевдоним, выбрав соответствующий драйвер:

После нажатия на кнопку "Готово" остается указать имя источника "db" и путь к файлу:

Нажатием кнопки "Ок" в системе появится псевдоним "db" к базе данных, который можно будет использовать при обращении к файлу db.mdb . Следует заметить, что аналогичным образом можно указать псевдоним и к другим СУБД, при этом принцип реализации веб-интерфейса к БД не изменится.

Заметим, что для работы с файлами *.mdb можно работать и без псевдонима, т.е. вместо подключения
   DSN = "db"
можно использовать одно из следующих подключений:
   DSN = "Driver={Microsoft Access Driver (*.mdb)}; PWD=; DBQ=c:\Inetpub\wwwroot\dhtml\db.mdb"
   DSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Inetpub\wwwroot\dhtml\db.mdb"

Здесь видно, что при подключении используется полный путь к файлу, что менее практично.

3. Если соединение не устанавливается, проверяем, что в MySQL не наложены ограничения на IP, с которых осуществляется подключение. Если это не помогло, можно установить MySQL Workbench (https://www.mysql.com/products/workbench/), добавить туда базу данных MySQL и протестировать подключение - у Workbench более информативные сообщения об ошибке, зачастую с первого раза понятно куда копать.

4. После всех манипуляций можно выпить бокальчик вина и создать обработку работы с базой MySQL. Это очень просто:   

АДОСоединение = Новый COMОбъект("ADODB.Connection"); Если АДОСоединение.State = 0 // 0 - adStateClosed Тогда SRV = "..."; //адрес сервера MySQL DB = "..";//имя базы MySQL UID = "..";//имя пользователя MySQL PWD = "...";//пароль пользователя MySQL PORT = "";//порт сервера MySQL, например 3306 cstr = "DRIVER={MySQL ODBC 5.3 Unicode Driver}; |SERVER=" + SRV + ";UID=" + UID + "; |PASSWORD=" + PWD + ";DATABASE=" + DB + ";PORT=" + PORT + ";"; Попытка АДОСоединение.Open (cstr); Исключение АДОСоединение = Неопределено; Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЕсли; //выполняем запрос к MySQL: ТекстЗапроса = "SELECT ITEMS.ID FROM ITEMS"; Table = АДОСоединение.Execute(ТекстЗапроса); Пока Table.EOF() = 0 Цикл Сообщить(Table.Fields("ID").Value); Table.MoveNext(); КонецЦикла; Table.Close();

  • IIS и 1С ошибки: Обнаружено потенциально опасное значение Request.Path или ошибка 500
    IIS и 1С ошибки: Обнаружено потенциально опасное значение Request.Path или ошибка 500

    Ошибка примерно такая:[HttpException (0x80004005): Обнаружено потенциально опасное значение Request.Path, полученное от клиента (:).] System.Web.HttpRequest.ValidateInputIfRequiredByConfig() +9914812 System.Web.PipelineStepManager.ValidateHelper(HttpContext context) +53Алгоритм следующий:  Открываем IIS. Открываем наш сайт-публикацию в браузере. Идем в сопоставления обработчиков. Ищем ISAPI-dll и выделяем строку. Справа нажимаем "Добавить…

  • ОТКЛЮЧИТЬ CTRL+ALT+DEL ПРИ ВХОДЕ В WINDOWS
    ОТКЛЮЧИТЬ CTRL+ALT+DEL ПРИ ВХОДЕ В WINDOWS

    При включении компьютера, Вам нужно нажать "Ctrl"+"Alt"+"Del"и выбрать пользователя Настройка Windows Отключить нажатие CTRL+ALT+DEL сразу после загрузки Windows Нажимаем "Пуск". Заходим в "Панель управления" - "Администрирование" - "Локальная политика безопасности" - "Локальные политики" - "Параметры безопасности" Находим пункт "Интерактивный вход в систему: не требовать нажатия CTRL + ALT +…

  • Массовая замена значений в БД mysql средствами PHPMyAdmin
    Массовая замена значений в БД mysql средствами PHPMyAdmin

    Иногда требуется массово заменить значения в ячейке таблицы базы данных mysql. Допустим стоит задача: одним запросом во всей таблице базы данных поменять запись «значение 1» на  «значение2» . Как это сделать разберём ниже. Заходим в интерфейс phpMyAdmin.  Допустим, у нас есть таблица «yuts_catalog»,в ней поле «leader», и значения в ячейке этого поля «0″, которое…

  • полезные PHP скрипты
    полезные PHP скрипты

    Не так уж конечно и давно, но занимался, в серьёз, PHP программированием, но потом как то забросил. А вот сейчас порой нужно что ни будь дописать, но программирование, как и иностранный язык, без повторений можно всё забыть, а вспоминать — время. Поэтому решил написать не большие, но полезные примеры на php, дабы не забыть и воспользоваться, когда будет нужно.1. Отправка E-mail…

  • Пять способов вызвать JS функцию
    Пять способов вызвать JS функцию

    JavaScript — язык мультипарадигменный, и в нем имеются механизмы функционального программирования. Пора изучить эти возможности. В этой статье я расскажу вам о пяти способах вызова функций в JavaScript.На первых этапах изучения JavaScript новички обычно думают, что функции в нем работают примерно так же, как, скажем, в C#. Но механизмы вызова функций в JavaScript имеют ряд важных отличий, и незнание…

  • Робимо фігуру мрії. Заняття з власною вагою
    Робимо фігуру мрії. Заняття з власною вагою

    Заняття з власною вагою вважаються природними та безпечними, не те що вправи зі штангою. Вони здатні допомогти кожному, незважаючи на рівень фізичної підготовки. З такими тренуваннями можна знайти стрункий і підтягнутий силует. Важливо тільки дотримуватися.Чотири…
    Блогер: amd2015

  • Як відволікти дитину від смартфона
    Як відволікти дитину від смартфона

    Вплив гаджетів на дитину.В наш час  діти доволі рано починають користуватися мобільними пристроями – телефонами, планшетами. Деяким батькам подобається вміння дітей поводитися з гаджетами з раннього віку, інші вважають, що мобільні пристрої допомагають заспокоїтися.…
    Блогер: amd2015

  • Що таке здорові сімейні стосунки
    Що таке здорові сімейні стосунки

    Кожен з нас потребує підтримки, любові, домашнього затишку. Тому дуже важливо знайти і полюбити надійного партнера. Який не залишить вас у важку хвилину. Головне поступово, не поспішаючи, розвивати з ним ваші сімейні стосунки. У цій статті ми коротко поговоримо про те,…
    Блогер: amd2015

  • Яблучний оцет та схуднення: користь для організму.
    Яблучний оцет та схуднення: користь для організму.

    Сьогодні ми поговоримо про користь яблучного оцту. Що таке яблучний оцет? Спочатку це цукор плюс яблучний сік. Потім певні бактерії, мікроби, цукор та дріжджі перетворюють цей цукор на спирт. І зрештою в оцет. Загалом, відбувається цілий процес. І готовий продукт – це оцет…
    Блогер: amd2015

  • Як вітамін D впливає на наш організм.
    Як вітамін D впливає на наш організм.

    Вітамін D є одним із чотирьох жиророзчинних вітамінів, відомих людині. Інші три – це вітаміни А, Е та К. У сьогоднішній статті ми розглянемо значення вітаміну D. З’ясуємо, які функції він виконує в нашому організмі, а також як запобігти наслідкам його недостатнього…
    Блогер: amd2015


Комментарии

27 + 24 =