Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Design Issue - Quick response appreciated

RE: Design Issue - Quick response appreciated

From: Miller, Jay <>
Date: Fri, 21 Sep 2001 10:28:45 -0700
Message-ID: <>

One thought is to have an additional column called something like 'PRIOR_ID'. If the Account_id is "changed" (actually a new value inserted) then the PRIOR_ID for the new row is set to the ACCOUNT_ID of the old row. That way you can always trace back if the transaction used to have a different account.    

Jay Miller

-----Original Message-----
Sent: Friday, September 21, 2001 12:35 PM To: Multiple recipients of list ORACLE-L


OLTP application with 24x7 requirement. 300,000 records per day are inserted into the transaction table. Environment: Solari 7. Oracle 817.  

The transaction table layout.  

Security ID
Account ID
Account Type
Trade Date
And other columns in this table.  

In the above table, the primary key is -- Security ID + Account ID + Account Type + Trade Date  

There are many to one relationships built to other child tables from Transaction Table  


User inserts a record into transaction table. In the first record, Account ID value is "HP" and he might insert a record into the child table (Or this transaction may not insert a record into a child table). After some time, the user queries the original record with the primary key and then changes the value in the column - Account ID to "IBM". Now, the original transaction record is NOT UPDATED. A record IS INSERTED with the new values. Also, he might or might not insert a record into a child table with this new values of primary key.  

Now the user would query the transaction table with Account ID = IBM. But, the user wants to get all the previous records also; in this case, he want to see the record with Account ID = "HP" also. Also, he want to see the related records from the child tables.  

I tried with the idea of sequence number generation but it was failing.  

Any ideas or suggestions are much appreciated.  


Maheswara Rao,
Oracle DBA
SunGard Securities


Please see the official ORACLE-L FAQ:

Author: Miller, Jay

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
To REMOVE yourself from this mailing list, send an E-Mail message to: (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Fri Sep 21 2001 - 12:28:45 CDT

Original text of this message