Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA9+dbExpress(delphi) / 13 сообщений из 13, страница 1 из 1
29.07.2004, 00:06
    #32626266
Марсель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
Привет всем.
Кто нить пробовал использовать MESSAGE statement при использовании dbExpress на клиенте ? Можно ли такое сделать.
PS: asa9.0.1, delphi7, dbExpress драйвер от борланд
Заранее спасибо.
...
Рейтинг: 0 / 0
29.07.2004, 10:07
    #32626508
golsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
В dbExpress вроде драйвер SyBase не включен. Или я ошибаюсь?
...
Рейтинг: 0 / 0
29.07.2004, 10:23
    #32626534
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
авторВ dbExpress вроде драйвер SyBase не включен. Или я ошибаюсь?
Borland его потом отдельно сделало (см. FAQ).
...
Рейтинг: 0 / 0
29.07.2004, 17:28
    #32627816
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
Уж сколько раз твердили миру, MESSAGE работает только в драйверах построенных на основе нативной библиотеки dblib. А конкретно SaVCL и NativeDB.
...
Рейтинг: 0 / 0
29.07.2004, 18:15
    #32627940
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
Выдержка из 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
29.07.2004, 18:48
    #32628024
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
ASCRUS
Так что пишем Callback функцию, регистрируем ее в драйвере ODBC и получаем себе сообщения. Я вот на досуге хочу попробовать это дело к PB пришпандолить, а вдруг получится :)
Да, в BOL9 такие строчки есть. Вот теперь ткните мне пальцем, какие параметры для SQLSetConnectAttr надо дать чтобы зарегестрировать callback? Самый свежий на сегодня MDAC 2.8 ничего, ни про какие callback не знает.
...
Рейтинг: 0 / 0
29.07.2004, 19:26
    #32628086
Марсель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
а это не то:
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
29.07.2004, 20:15
    #32628147
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASA9+dbExpress(delphi)
Марсельа это не то:
Откуда это взято? Координаты статьи пожалуйста.

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

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

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

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

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


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