with Query1 do begin
DataBase1.StartTransaction;
try
SQL.Clear;
SQL.ADD('DELETE FROM Ptr ');
SQLEXEC;
Database1.Commit;
except
MessageDlg('에러!', mtInformation, [mbOk], 0);
Database1.Rollback;
Exit;
end;
CommitUpdates;
end;
이 소스에서, 2번째 라인이,
closed Dataset에서 수행할 수 없다고 하는데,
분명 이 때, Query1은 Open된 상태거든요?
왜 이런 문제가 나는지....
제가 잘못 쓰고 있는지요..
Transaction에 대해 많은 조언 부탁드립니다.
> with Query1 do begin
> DataBase1.StartTransaction;
> try
Close; <--------- 이게 빠진거 같은데요..
> SQL.Clear;
> SQL.ADD('DELETE FROM Ptr ');
> SQLEXEC;
> Database1.Commit;
> except
> MessageDlg('에러!', mtInformation, [mbOk], 0);
> Database1.Rollback;
> Exit;
> end;
> CommitUpdates;
> end;
>
> 이 소스에서, 2번째 라인이,
> closed Dataset에서 수행할 수 없다고 하는데,
> 분명 이 때, Query1은 Open된 상태거든요?
> 왜 이런 문제가 나는지....
>
> 제가 잘못 쓰고 있는지요..
> Transaction에 대해 많은 조언 부탁드립니다.
위 Close;써 주시는게 확실하구요..
DataBase1는 당연히 Active되어 있겠지요?
CommitUpdates; <- 글구, 이건 안해주셔도 되는데...