powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA9+dbExpress(delphi)
13 сообщений из 13, страница 1 из 1
ASA9+dbExpress(delphi)
    #32626266
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем.
Кто нить пробовал использовать MESSAGE statement при использовании dbExpress на клиенте ? Можно ли такое сделать.
PS: asa9.0.1, delphi7, dbExpress драйвер от борланд
Заранее спасибо.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32626508
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В dbExpress вроде драйвер SyBase не включен. Или я ошибаюсь?
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32626534
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ dbExpress вроде драйвер SyBase не включен. Или я ошибаюсь?
Borland его потом отдельно сделало (см. FAQ).
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32627816
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уж сколько раз твердили миру, MESSAGE работает только в драйверах построенных на основе нативной библиотеки dblib. А конкретно SaVCL и NativeDB.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32627940
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдержка из BOL9 по оператору MESSAGE:
авторESQL and ODBC clients receive messages via message callback functions. In each case, these functions must be registered. To register ESQL message handlers, use the db_register_callback function.

ODBC clients can register callback functions using the SQLSetConnectAttr function.
Так что пишем Callback функцию, регистрируем ее в драйвере ODBC и получаем себе сообщения. Я вот на досуге хочу попробовать это дело к PB пришпандолить, а вдруг получится :)
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628024
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUS
Так что пишем Callback функцию, регистрируем ее в драйвере ODBC и получаем себе сообщения. Я вот на досуге хочу попробовать это дело к PB пришпандолить, а вдруг получится :)
Да, в BOL9 такие строчки есть. Вот теперь ткните мне пальцем, какие параметры для SQLSetConnectAttr надо дать чтобы зарегестрировать callback? Самый свежий на сегодня MDAC 2.8 ничего, ни про какие callback не знает.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628086
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а это не то:
To register a callback in ODBC, first declare the message handler:

void SQL_CALLBACK my_msgproc(
void * sqlca,
unsigned char msg_type,
long code,
unsigned short len,
char* msg )
{ ... }

Install the declared message handler by calling the SQLSetConnectAttr function.

rc = SQLSetConnectAttr(
dbc,
ASA_REGISTER_MESSAGE_CALLBACK,
(SQLPOINTER) &my_msgproc, SQL_IS_POINTER );
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628147
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсельа это не то:
Откуда это взято? Координаты статьи пожалуйста.

Так. Дефайн для ASA_REGISTER_MESSAGE_CALLBACK, я нашел. Теоретически должно заработать, но все же повторю еще раз: стандартный ODBC даже в теории не предполагает что сервер может посылать клиенту что-то кроме резалтсетов. Данная реализация callback является исключительно собственным Sybase дополнением в их драйвер. И... не знаю как насчет ASA8, но в ODBC драйвере от ASA7 этого точно нету. Только что проверил :)

И давным-давно это есть в EmbeddedSQL. На мой взгляд намного проще и надежней использовать давно документированные решения. Тем более что уже давно существуют соотвествующие драйвера.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628162
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это уже не смешно
там же в BOL(9.01) в конце идут примеры, до конца надо смотреть
с самого начала хотел узнать есть доступ к ODBC через dbExpress. Сам думаю что нет, поэтому и спросил, точно не знаю. Почему не использую драйвера от 3-х фирм - это уже отдельный разговор.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628367
Andyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсель, привет. :)

Вообще-то dbExpress - просто обертка для ODBC драйвера ASA. Оно тебе надо, лишнюю прослойку между приложением и базой ставить? Используй, например, ODBCExpress или SQLDirect, там и настроек больше и производительность получше.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628400
Andyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсель, привет. :)

Вообще-то dbExpress - просто обертка для ODBC драйвера ASA. Оно тебе надо, лишнюю прослойку между приложением и базой ставить? Используй, например, ODBCExpress или SQLDirect, там и настроек больше и производительность получше.
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32628403
Andyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гм... что-то ерунда какая-то случилась - сообщение продублировалось. Упс. :(
...
Рейтинг: 0 / 0
ASA9+dbExpress(delphi)
    #32853883
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсельэто уже не смешно
там же в BOL(9.01) в конце идут примеры, до конца надо смотреть

Однако, это все же смешно....
Понадобилось мне тут на ODBC клиента сделать. Полез в документацию - нету таких строчек. Вот нету и все! Полчаса копался не мог найти. Потом все же обнаружил. Эта пакость упоминается в документации от ASA 9.0.1, но ее НЕТУ в ASA 9.0.0.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA9+dbExpress(delphi)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]