Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Transaction Issue while maintaining sum

Transaction Issue while maintaining sum

From: Puneet Agarwal <NOSPAM__puneetagarwal_at_india.com>
Date: Fri, 2 Nov 2001 22:03:25 +0530
Message-ID: <9ruhri$vl6vs$1@ID-99266.news.dfncis.de>


I am seriously stuck in a transaction handling issue.

I have following tables

Account

                AccountId                  INT         PK
                AccountName         String
                Balance                    INT             PK



Voucher
            VoucherId            INT        PK
            VoucherDate        Date         PK


VoucherDetails
            VoucherDetailId    Int        PK
            VouhcerId                INt        FK for Voucher Table
            AccountId            INT        FK for Accounts Table
            Amount                INT

I have a Java Swing based thick client through which I want the users to enter data into these tables. Users need to simultaneously create vouchers which may corresponding to same account. Users need the capability to save(commit) or undo(rollback) changes on the voucher level. Each entry in voucher may have many entries in voucherdetails. I want to use a trigger on voucherDetail table insert/delete/update operations so that i can update the balance column in the account table accordingly. But in case two users are feeding data concurrently and they happen to start feeding a voucher which contains entry for same account in voucherDetails, the first users transaction will hold a lock on the corresponding account table row. And now if the second user tries to update that row, he will find the row locked and thus he will not be allowed to feed the voucher till the first user commits his data and releases the lock.

Kindly suggest me a solution for this scenario. The requirement is very important for me that the users should be able to commit/rollback the changes on voucher level which may include many rows in voucherDetails table.

Thanks

Puneet Received on Fri Nov 02 2001 - 10:33:25 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US