Mike, Thanks for the reply. It does the task. However, I want b.id and c.id as pk. In you example, each innsert will get the same number starting from 1 each time. Challenge to me is how to opulate C.b_id that is referenceing to B.id. Any thoughts? Thanks Sandeep -- //www.freelists.org/webpage/oracle-l