Single Post |
Topic: [wlx] odbc-wlx - просмотр Access, Excel, CSV файлов |
Author |
Message |
little-brother
|
Posted: Tue Oct 26, 2021 18:42 Post subject: |
|
|
Хорошие вопросы, постараюсь описать подробно.
Плагин работает через ODBC драйвера, представляющие собой dll. Поскольку 32-битное приложение не может использовать 64-битные dll и наоборот, то 32 и 64 драйвера - это разные наборы. Наличие драйверов можно проверить из ODBC-администратора на вкладке Драйверы:
Code: |
C:\Windows\odbcad32.exe - для 64-битных
C:\Windows\SysWOW64\odbcad32.exe - для 32-битных
|
При этом DSN созданные для 32-битной версии будут видны в 64 и наоборот, только вот через них подключиться будет нельзя.
Из коробки Windows x64 имеет 32-битные драйвера для CSV, Excel, Access и MSSQL, и только один 64-битный для MSSQL, поэтому и требуется установка пакета Microsoft Access Database Engine 2010, содержащего 64-битные драйвера. После его установки можно на вкладке Драйвера в в odbcad32 будут добавлены для CSV, Excel и Access.
Data Source Name (DSN) - это по сути описание, как подключаться к базе/файлу. По нему система генерирует строку подключения, но её можно создавать и самостоятельно. Пример строки
Code: |
Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;
|
При просмотре не dsn-файла, а к примеру xls, плагин генерирует эту строку самостоятельно. При просмотре dsn файла он читает информацию из этого файла и также генерирует её. Никакой дополнительной информации в списки DSN разумеется не вносится.
Quote: | что значит "путем создания файлового DSN |
В ODBC администраторе вы можете создать Файловый DSN (для этого есть отдельная вкладка) - это обычный ini-файл, который можно и самому написать, но администратор не даст вам сделать в нем ошибки, ну и не надо будет искать какие поля заполнять. Полученный dsn-файл можно уже открыть плагином.
Если плагин выдает сообщение, что не может присоединиться, то значит что-то пошло не так. ODBC драйвера не дают какого то внятного описания, да и сам интерфейс весьма путанный. Так что, увы, если не открылся, значит не открылся
Скорость работы через ODBC в несколько раз хуже, чем при работе напрямую через родные драйверы или прямо с файлов, в случае с CSV, поскольку после извлечения данных выполняется их преобразование к единому ODBC-формату. Для CSV для файла скорость ODBC меньше где то 4+ раз, но 2000 строк должно открываться быстрее 5с. Так на моем Ryzen2200g файл в 40 000 строк открывается ~3с.
Для CSV данный плагин не слишком удачный выбор, поскольку скорее всего файл в кодировке utf-8, а потому для корректного отображения придется добавлять описание в schema.ini, т.е. требуется отдельная работа. Возможно напишу отдельный плагин для csv. |
|
|
|
|
|
Powered by phpBB © 2001, 2005 phpBB Group
|