powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / драйвер dbexpress для asa (delphi)
2 сообщений из 2, страница 1 из 1
драйвер dbexpress для asa (delphi)
    #33069661
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
привет
знаю что вопрос больше подходит для конфы по делфи, но думаю что здесь больше вероятность получить ответ, поэтому сильно не пинайте :)
есть Delphi7up1, ASA902, dbexpres driver: dbexpasa.dll - 7.1.1503.28295
http://www.sybase.com/detail?id=1027878
http://www.ianywhere.com/developer/code_samples/borland_asa_dbexpress.html

при его использовании есть такая проблема:
1 создаем динамически связку запрос-провайдер-датасет
(TSQLQuery-TDataSetProvaider-TClientDataSet)
2 редактируем данные в датасет и сохраняем их
(clientdataset.apllyupdates(0))
3 перечитываем данные в датасет (clientdataset.open)
4 закрываем датасет и уничтожаем связку запрос-провайдер-датасет

после 3 получаем shared lock таблиц которые есть в запросе SQLQuery.
после 4 блокировки не пропадают.
после работы X пользователей которые что-то пишут в БД в течение некоторого времени получаем кол-во_блокировок =~(X*кол-во_таблиц)
для изменения чего либо в БД приходится все юзеров выгонять ;)
теперь надо сделать dbremote репликацию c 1 удаленной БД, и я думаю эти блокировки будут большой проблемой при репликации изменений в структуре БД.

Такое поведение для драйвера нормально? (если это вообще дело драйвера)

пробовал другие dbx драйвера для asa (nativedb, VISOCO и пр)
там после 3 блокировки возникают, но после 4 они пропадают (работают через embedded SQL)
в одном (dbxoodbc) нет блокировок и после 3

ps: у кого есть более новый dbexpasa.dll из Delphi8UP2 или Delphi9 (не знаю есть ли там) плиз киньте мне на мыло пожалуйста.
спасибо.
...
Рейтинг: 0 / 0
драйвер dbexpress для asa (delphi)
    #33069732
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марсельпри его использовании есть такая проблема:
1 создаем динамически связку запрос-провайдер-датасет
(TSQLQuery-TDataSetProvaider-TClientDataSet)
2 редактируем данные в датасет и сохраняем их
(clientdataset.apllyupdates(0))
3 перечитываем данные в датасет (clientdataset.open)
4 закрываем датасет и уничтожаем связку запрос-провайдер-датасет

после 3 получаем shared lock таблиц которые есть в запросе SQLQuery.
после 4 блокировки не пропадают.
после работы X пользователей которые что-то пишут в БД в течение некоторого времени получаем кол-во_блокировок =~(X*кол-во_таблиц)
для изменения чего либо в БД приходится все юзеров выгонять ;)
Всё нормально. Если хочешь снимать Shared Locks - выдавай Commit после Retrieve.

теперь надо сделать dbremote репликацию c 1 удаленной БД, и я думаю эти блокировки будут большой проблемой при репликации изменений в структуре БД.
Да с чего бы?

пробовал другие dbx драйвера для asa (nativedb, VISOCO и пр)
там после 3 блокировки возникают, но после 4 они пропадают (работают через embedded SQL)
в одном (dbxoodbc) нет блокировок и после 3
Дык включи Request-level logging и посмотри, кто что шлёт на сервер.

ps: у кого есть более новый dbexpasa.dll из Delphi8UP2 или Delphi9
Из лужи не пьём-с .
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / драйвер dbexpress для asa (delphi)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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