Страница 1 из 1

SQL Query without Dummy Tables via ODBC

Добавлено: 14 Май 2018, 14:05
Developer
Привет всем!

Кто располагает примерами (Clarion) технологии выполнения SQL запроса без использования фиктивных таблиц (Dummy Tables) via ODBC?

В примере UltimateSQL https://clarionlive.wikispaces.com/Ulti ... Demo%20App
есть метод SQL Query - ODBC Method с MS SQL, но на Sybase SQL Anywhere у меня не работает :(

Поделитесь информацией и мнениями.

P. S. применение ADO хорошо, но требует соединения через ADO Connection, что не всегда возможно.

SQL Query without Dummy Tables via ODBC

Добавлено: 14 Май 2018, 14:18
kreator
А чем эти фиктивные таблицы плохи?

SQL Query without Dummy Tables via ODBC

Добавлено: 14 Май 2018, 22:38
PavelNK
ADO не подходит? Примеры выкладывал на форуме

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 1:00
Developer
kreator писал(а): 14 Май 2018, 14:18А чем эти фиктивные таблицы плохи?
Ничем не плохи - просто оказывается можно и без них :D

Появился интерес к SQL Query without Dummy Tables via ODBC, после знакомства с примером UltimateSQL :wink:
PavelNK писал(а): 14 Май 2018, 22:38ADO не подходит? Примеры выкладывал на форуме
ADO - хорошее решение, но не всегда применимое, да и в нашем случае необходимо переписывать код Clarion - используем в основном
SQL сервера MSSQL и SAP Sybase SQL Anywhere ASA через нативные драйверы Clarion.

PavelNK - по ADO есть вопросы (напишу в личные сообщения), но не в этой теме.

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 1:14
Дед Пахом
Developer писал(а): 14 Май 2018, 14:05Кто располагает примерами (Clarion) технологии выполнения SQL запроса без использования фиктивных таблиц (Dummy Tables) via ODBC?
ну я располагаю, а в чём проблема-то? Есть ODBC API, примеров в интернете навалом.

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 1:23
Developer
Дед Пахом писал(а): 15 Май 2018, 1:14ну я располагаю, а в чём проблема-то? Есть ODBC API, примеров в интернете навалом.
Жду с нетерпением рабочего примера на Clarion доступа к SQL серверам с использованием нативных драйверов Clarion (не ODBC) и формирования SQL запроса без Dummy Tables :wink:

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 1:31
Дед Пахом
ну ты уже определись, что тебе надо, а то
Developer писал(а): 14 Май 2018, 14:05via ODBC?
это одно, а
Developer писал(а): 15 Май 2018, 1:23с использованием нативных драйверов Clarion
прямо противоположное.

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 1:41
Developer
Дед Пахом писал(а): 15 Май 2018, 1:31ну ты уже определись, что тебе надо, а то
Developer писал(а): ↑14 Май 2018, 14:05
via ODBC?
это одно, а
Developer писал(а): ↑15 Май 2018, 1:23
с использованием нативных драйверов Clarion
прямо противоположное.
Так и знал что будет такой ответ :D

Вот http://www.clarionlive.com/index.php?op ... &Itemid=76
The Ultimate SQL Class is a ClarionLive! project to help make using SQL easier for Clarion programmers!

Last time, we covered what the goal of the class was, and the different methods and properties available in it. Since then, it's improved tremendously! The class no longer uses the "dummy" table method of retrieving query results, but now uses direct ODBC calls thanks to Rick Martin's ODBC classes! This has resulted in super-fast SQL data access, especially on large result sets!

Код: Выделить всё

!region File Declaration
UCustomer            FILE,DRIVER('MSSQL'),OWNER(glo:ConnectionString),NAME('dbo.uCustomer'),PRE(UCU),BINDABLE,CREATE,THREAD ! Ultimate Customer Table
pk_ID                    KEY(UCU:ID),NOCASE,PRIMARY        !                     
Name_Key                 KEY(UCU:Name),DUP,NOCASE          ! Key By Name         
Record                   RECORD,PRE()
ID                          LONG                           !                     
Name                        STRING(60)                     !                     
Address                     STRING(60)                     !                     
City                        STRING(50)                     !                     
State                       STRING(50)                     !                     
Zip                         STRING(9)                      !                     
Phone                       STRING(20)                     !                     
Counter                     LONG                           !                     
                         END
                     END                       

SQLScripts           FILE,DRIVER('TOPSPEED'),OWNER('''abNmer12$'''),ENCRYPT,PRE(SQL),BINDABLE,CREATE,THREAD !                     
pk_ID                    KEY(SQL:ID),NOCASE,PRIMARY        !                     
By_ScriptName            KEY(SQL:ScriptName),DUP,NOCASE    !                     
Script                      BLOB                           !                     
Record                   RECORD,PRE()
ID                          LONG                           !                     
Version                     LONG                           !                     
ScriptName                  CSTRING(51)                    !                     
                         END
                     END                       

!endregion

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 2:34
Developer
В общем, для понимания задачи и примера UltimateSQL - доступ к базе данных SQL сервера через нативные драйвера Clarion, а выполнение SQL запроса и получение результата без использования фиктивных таблиц (Dummy Tables) используя прямые вызовы ODBC API (direct ODBC calls Rick Martin's ODBC classes).

Данный пример хорошо работает с MSSQL сервером, но у меня не работает с SAP Sybase SQL Anywhere SQL Query ODBC Method (а необходимо) :wink:

С SAP Sybase SQL Anywhere через прямое присваивание строки соединения %ConnectionString и использование нативного драйвера Clarion SQLAnywhere - SQL Query Dummy Method работает, а ODBC Method нет.

Возможно причина в необходимости изменить шаблон и соответствующие в libsrc файлы.

Разбираюсь с этим, и поэтому спрашиваю какие есть аналогичные решения и примеры в исходном коде Clarion :wink:

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 10:03
kreator
Developer, мне всё же непонятно, чем prop:SQL хуже прямого вызова ODBC API? Кларионовские драйвера всё равно через ODBC работают (как правило).

SQL Query without Dummy Tables via ODBC

Добавлено: 15 Май 2018, 10:58
kreator
Я ещё понимаю, если совсем отказаться от стандартных драйверов и всего остального и сделать всё на API а-ля MAV. Или взять MAV. А пользовать и то и то? UltimateSQL - это просто пример возможностей и, может быть, крутости разработчика.

SQL Query without Dummy Tables via ODBC

Добавлено: 23 Май 2018, 17:22
gopstop2007
Developer писал(а): 14 Май 2018, 14:05есть метод SQL Query - ODBC Method с MS SQL, но на Sybase SQL Anywhere у меня не работает :(
посмотрите на ftp -> cmag-2011-01 - SQL Query Class , может поможет )

SQL Query without Dummy Tables via ODBC

Добавлено: 24 Май 2018, 14:03
Developer
gopstop2007 писал(а): 23 Май 2018, 17:22
Developer писал(а): 14 Май 2018, 14:05есть метод SQL Query - ODBC Method с MS SQL, но на Sybase SQL Anywhere у меня не работает :(
посмотрите на ftp -> cmag-2011-01 - SQL Query Class , может поможет )
gopstop2007 - спасибо за отклик, обязательно посмотрю!