Necrolog, добрый день! Работать должно и так и так. Отличие 8-й версии - использование Unicode-версий ODBC драйверов. На скриншоте про OLEDB видно, что с провайдером проблема - "вылет". Что кстати за провайдер ? Родной, оракловый или Microsoft ? Мы в понедельник сможем на Oracle 12c покрутить. По производительности специально не замеряли, когда с подключением разберёмся, можете на реальных данных покрутить и выбрать, что лучше.
По поводу задержки при коннекте - можно проверить на отвлечённом тестовом проекте под Visual Studio допустим, будет ли так же OLEDB отрабатывать, чтобы определить чья это особенность.
Про экспорт запросов: есть импорт объектов. В редакторе базы данных посмотрите Сервис - Импорт, можно импортировать в редактируемую базу объекты их других баз.
Обнаружил проблему все таки с Oracle Я экспортировал таблицы из Акцесс через соединение ОДБС в Оракл 12. Таблички там создались как оказалось такого вида "MYZULUTABLE" -- именно в Кавычках. Что выяснилось гораздо позже после начала работы с базой. Это дело поправимо руками - убиранем ковычек из имени базы через SQL developper. Затем обнаружилось что импортированные таблички не имеют ключа на SYS (Индекса). Собственно полез делать http://joxi.ru/V2V5GM9h0lqJem
Ругнулось что мол сейчас Альтер Тэйбл будет согласился и табличка исчезла для Zulu). Однако в базе она есть! только имя другое стало. http://joxi.ru/GrqYVq7INBxqOr
И даже если создать сначала новую таблицу с ключиком то ок. Но если убрать ключ сохранить, а затем добавить ключ заного то будет все тоже самое имя таблицы обретет ковычки и поcтфикс _альтеред.
Спасибо.. Однако хочется все таки вернуться к вопрос скорости работы ZUlu с драйверами ODBC - OLEDB ПОнятно что локальная база типа MSACCESS и PARADOX будут работать быстрее. Я хочу высказать два предположения. 1) Встречал описание проблемы того что драйвер OLEDB/ODBC нативный для X64 систем. И пишут что работает он лучше X86. Поскольку Zulu все еще признает только X86 драйвера. Проверить данную теорию не представляется возможным. https://community.oracle.com/thread/4042265 2) До сих пор не понимаю зачем каждый раз ZDataBrowser грузит все записи по базы когда щелкаем на 1 объект.. Также предполагаю что после закрытия окна браузера все созданные соединения теряются а на их открытие заново, время надо.. Я не знаю логику работы вашего браузера базы остается только гадать.
Вопрос оптимизации и скорости очень важен. Крупные предприятия не сидят на AССESS и PARADOX
Тормоза с подключением и работа ZuluBrowser проявляются не только на ORACLE но и PostgreSQL и MSSQL, MYSQL
Еще приведу пример тот же OLEDB for ORACLE x86 я использую в своей приложении (C#)минуя API ZULU работаю с табличками на прямую. При этом вставляется в виртуальную DATATABLE 10 000 записей *13 столбцов. [19.02.2018 14:13] ВРемя запроса = 898 мс на холодную [19.02.2018 14:14] ВРемя запроса = 161 мс после запроса. Как у зулу померять не знаю БУдет ли правильным просто использвать Zdatabase.ExecSQL Еще бы браузер базы данных както задействовать чтобы код в целом помреять. На вскидку получетая на холодную секунд 10 на горячую 6
Necrolog, добрый день! 1. Разницу x86 и x64 в ZuluGIS пока не проверить, не прокомментировать. 2. Попутно: SQLColumns действительно вызывается - нам надо знать структуру таблиц при работе с браузером. 3. При щелчке по объекту выбирается только запись(и) по ключу (с условием WHERE). Откуда «все записи» (SELECT ALL) не понятно. Нужны подробности. Профайлер так показал? 4. ZbDatabase.ExecSQL фактически сразу передаёт запрос провайдеру. Можно проверить, не должно замедляться. 5. В общем по «тормозам» будем разбираться.
Дмитрий Озеров написал: Necrolog , добрый день!1. Разницу x86 и x64 в ZuluGIS пока не проверить, не прокомментировать.2. Попутно: SQLColumns действительно вызывается - нам надо знать структуру таблиц при работе с браузером.3. При щелчке по объекту выбирается только запись(и) по ключу (с условием WHERE). Откуда «все записи» (SELECT ALL) не понятно. Нужны подробности. Профайлер так показал?4. ZbDatabase.ExecSQL фактически сразу передаёт запрос провайдеру. Можно проверить, не должно замедляться.5. В общем по «тормозам» будем разбираться.
Просто даже в самом естественном приложение ОРАКЛ SQL Developper Все маньше чем за секунду отображается. А вот почему браузер базы данных зулу так тормозит когда работет с драйверами ODBC OLEDB не понятно. Опять же дальше мои предположения без каких либо претензий. Может он как-то типы конвертит на лету.. На картинке там есть строка в 400 символов так вот при экспорте в АЦЕСС из оракл она становиться длинным тесктом. Но Браузер ваш почему то отображает как ДАННЫЕ как BLOB . И допустим использовать тематических раскрасрасках не представляется возможным как мне сообщили коллеги. Вообщем и в целом я склоняюсь к тому что не сами может запросы тормозят а именно браузер. Результат запроса если судить по АПИ зулы какойто Recordset последовательный.. Я уже как то писал предложение к 8 Зуле сделать тип который бы не надо было итеррировать в цикле выбирая по строчке А получить сразу результат целиком.
Типы данных: включите, пожалуйста, флажок "Экспертный режим" - будут отображаться все поддерживаемые типы.
Задержки: при работе с браузером ZuluGIS нужно прочесть структуру таблиц для выполнения дальнейших запросов. Кроме того, SQL Developer не использует ODBC или OLEDB. При работе с ODBC действительно вызывается SQLColumns(), которая упоминается в посте из комьюнити. Но что в этом криминальног не понятно. Дальше что именно тормозит можно говорить только при анализе профайлером.
Типы "как-то на лету" не конвертируются. Они конвертируются при экспорте из одного СУБД в другой. Например, в MS Access нет однозначного соответствия типу VARCHAR2(400). В MS Access либо обыкновенное строковое поле до 255 символов, либо "длинный текст", который на самом деле Memo или текстовый BLOB.
Да, тематические раскраски не работают с Memo, Вы просто должны правильно проектировать модель данный в зависимости от СУБД.
"какойто Recordset последовательный" - это не "какой-то", а фундаментальная сущность при работе с данными СУБД. Результат запроса всегда некий объект последовательного доступа. "А получить сразу результат целиком" - это как ? Научите. Всё равно итерировать придётся.
Да спасибо нашел проверил. Поделюсь своими мыслями и ощущениями. Открываешь. один раз запрос большой в браузере долго думает. Дальше если браузер даже закрыть и обратиться к запросу позже - Все летает УРа.
Вот хочется все таки такое радостное ощущение сохранять и после закрытия самой программы ZULU. Просто как предложение. Зделать Кэшфайлик *.bxxx. Который бы заполнялся во время редактирования запросов. Ну и читался бы тоже быстрее и в приоритете.