Доступ к базе TPS через SQL (без ODBC драйвера)

Программы на Clarion, шаблоны, библиотеки и пр.

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
vic7tar
Ветеран
Сообщения: 365
Зарегистрирован: 09 Февраль 2017, 20:12

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение vic7tar »

arlean1 писал(а): 15 Ноябрь 2018, 0:29Если нет исходников, то хотя бы откуда пример? А то скучно :nr: всухую
Открываем в IDA Pro и все там смотрим.
C10, Win10x64
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение RaFaeL »

kreator писал(а): 15 Ноябрь 2018, 11:38
RaFaeL писал(а): 14 Ноябрь 2018, 23:03 Смысл например может быть такой: у нас основное (коммерческое) приложение на MS SQL, плюс есть бесплатная однопользовательская демо-версия на TPS. Местами код пишется два раза - для SQL запросы, для TPS по старинке. Наверное, решение позволило бы этого избежать. Правда, у нас еще куча хранимок, х.з. как тут с этим, не вникал
Притянутый за уши пример. Сейчас не начало 2000-х.
Ну так у нас и продукт родом из начала 2000-х )
arlean1
Активист
Сообщения: 114
Зарегистрирован: 24 Июль 2016, 22:34

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение arlean1 »

Developer писал(а): 15 Ноябрь 2018, 1:11We magicians do not reveal our secrets - фокусники не раскрывают секреты

Михаил молодец!!! Этот пример и есть фокус
Mike Duglas - что-то имя знакомое ))) Mike сделал два магических пасса руками и подменил как фокусник тему. На КларионХабе пишет - SQL access to TPS databases without ODBC driver,
а работает с SQLite.

Есть простые ребята и не фокусники. В ClaMag за 2007- номер 2 - пример работы с SQLite напрямую и сравнение по скорости с TPS: Embedding The SQLite Engine In Clarion Application, John Taylor.
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Дед Пахом »

Народ пошёл, им кролика из шляпы достаёшь, а они "да это обман!", "да я такую шляпу в фикспрайсе видел!" Улыбайтесь, господа.
С уважением, ДП
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Дед Пахом »

Кстати, "Browse Teachers with SQL filter" оперирует таблицами TPS, в чём каждый может легко убедиться (то есть в рукавах у меня ничего нет).
С уважением, ДП
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4562
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение finsoftrz »

В детстве у нас была поговорка "Есть такая книжка...", дальше не совсем цензурно. :-)
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7329
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Игорь Столяров »

Дед Пахом писал(а): 20 Ноябрь 2018, 18:50оперирует таблицами TPS
Открой тайну золотого ключика … ! (C) Буратино
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение kreator »

Игорь Столяров писал(а): 21 Ноябрь 2018, 9:43 Открой тайну золотого ключика … ! (C) Буратино
А мне больше интересно - "накой"?
We are hard at work… for you. :)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Дед Пахом »

kreator писал(а): 21 Ноябрь 2018, 11:15А мне больше интересно - "накой"?
Ну например, в режиме администратора поиск по всей базе может быть полезным. А вообще не знаю, делал без всякой цели.
С уважением, ДП
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Yufil »

Не увидел в трассировке. У меня лёгкое подозрение, перерастающее в абсолютную уверенность, что TPS не поддерживает SQLFilter...
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Дед Пахом »

Юрий, я Вас умоляю! Можно добавить/изменить/удалить запись и посмотреть в topscan-е.
С уважением, ДП
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Yufil »

Дык это я видел. Только здесь не SQL, а аккуратно выполненный вызов Evaluate... А в трассировке отключен флажок "trace calls... ", - и я не вижу команду SQL, обновляющую базу. Кстати, у меня опять та же хрень с trace.ini - включил трассировку - а отключать руками :(
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7329
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доступ к базе TPS через SQL (без ODBC драйвера)

Сообщение Игорь Столяров »

Я кажется понял как это работает ... ;)
Выполняется разбор структуры Record TPS файла и по ней создаётся аналогичный SQLite список в памяти (с префиксом :Memory)
А далее уже просто: SQL команды выполняются для списка SQLite:Memory (+ синхронизация с "реальным" TPS)

Что действительно интересно и имеет прикладную ценность:
Если заменить работу с In-Memory драйвер на SQLite:Memory - то можно выполнять невероятно
быстро SQL запросы для огромных списков ! :)
За теми кто отстал - не возвращаться. (С) Кодекс
Ответить