powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA 9 + Deplhi транзакции
3 сообщений из 3, страница 1 из 1
ASA 9 + Deplhi транзакции
    #34548721
просто user
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пробовал через ADO и dbExpress
есть следующая конструкция

begin tran
insert ....(1)
insert ....(2) - error!!!
rollback

результат первого insert все одно в базе. если это же пропустить через isql все логично - первый insert откатываеться.

далее такой эксперимент -
begin tran
select @@trancount

если это выполнить в пределах одного запроса - результат "1". а если сделать
begin tran -- myQuery.ExecSQL
select @@trancount -- myQuery.Active:= 1 - результат "0"

такое ощущение как autocommit работает. т.к. и ADO и dbExpress работают через ODBC предпологаю что проблема в них
...
Рейтинг: 0 / 0
ASA 9 + Deplhi транзакции
    #34549974
Фотография Анатолий Иванов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто userтакое ощущение как autocommit работает. т.к. и ADO и dbExpress работают через ODBC предпологаю что проблема в них
Автокоммит автокоммитом, но что в BDE, что в ADO, что в NativeDB (dbExpress не пробовал) есть методы типа StartTransaction и Commit с Rollback, которые прекрасно работают.
Пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
ASASession1.StartTransaction;
try
  ASADataset1.ExecSQL;
  ASADataset2.ExecSQL;
  ASASession1.Commit;
except
  ASASession1.Rollback;
  raise;
end;
...
Рейтинг: 0 / 0
ASA 9 + Deplhi транзакции
    #34550260
Ser4g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попробуй так ...

begin tran
declare (create variable) err integer;
savepoint sp;
insert (1)
insert (2)
...........
set err=@@error;
if err <> 0 then rollback to savepoint sp end if;

и это, советую уходить от работы через БДЕ ...есть же множество компонетов (в том числе и free) для работы с ASA
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA 9 + Deplhi транзакции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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