How to use cached updates within transactions for SQL2000

Dear all,

SQL seems to auto COMMIT the transaction(if any) for the ApplyUpdates
method. Is this right? or how to handle it if we need to apply cached
updates within a transaction.

The following is the code, and it will hit an error upon "DbCommit" - Error:
No transactions to commit (because SQL has implicited commited it upon the
method ApplyUpdates before it).

Thanks in advance.

User input with a DbGrid with a query, Cached=True updates. once done, click
"post" button, here is what the button does:

DbStartTransaction;
try
    update some other tables ...

     AQry.ApplyUpdates;
     DbCommit;
     QryItem.CommitUpdates;
except
  DbRollback;
end;