Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

need suggestion in deletion for five tables at a time

577162Nov 12 2009 — edited Oct 3 2011
Hi,

I need some suggestion regarding a deletion and i have the following scenario.

tab1 contains 100 items.
for one item tab2..6 tables contain 4000 rows.So the loop will run for each item and will delete 20,000 lines and will do a commit.
Currently for 5,00,000 deletion it is taking 1 hr.All the tables and indexes are analysied.

CURSOR C_CHECK_DELETE_IND
IS
SELECT api.item FROM tab1 api WHERE api.delete_item_ind = 'Y';

type p_item IS TABLE OF tab1.item%type;
act_p_item p_item;

BEGIN

OPEN C_CHECK_DELETE_IND;
LOOP

FETCH C_CHECK_DELETE_IND bulk collect INTO act_p_item limit 5000;
FOR i IN 1..act_p_item.count
LOOP

DELETE FROM tab2 WHERE item = act_p_item(i);
DELETE FROM tab3 WHERE item = act_p_item(i);
DELETE FROM tab4 WHERE item = act_p_item(i);
DELETE FROM tab5 WHERE item = act_p_item(i);
DELETE FROM tab6 WHERE item = act_p_item(i);

COMMIT;
END IF;
END LOOP;

exit when C_CHECK_DELETE_IND%notfound;

END LOOP;

Hope i have explained the scenario.Can you please suggest me the right approach.

Thanks in advance.

Comments

Ian G Clough

Hi James,
If you make the office's location the identifying attribute for the office (delete the other attribute as it's no longer required) and then your rules can look like this:
Screenshot 2022-04-28 at 10.07.09.pngScreenshot 2022-04-28 at 10.10.07.pngI'm not sure how you might infer other details about the office unless those could be shared rules.
Best regards
Ian

James Woon - Monad

Thanks for that suggestion!
In this case, I have used 'the office location' as an example entity attribute that needs to be populated. But unfortunately, the actually attribute are dates. So maybe something like the office's opening date. We also do need to maintain the identifier (XYZ1, ABC2, etc.).
Therefore, don't think the proposed solution would work :(

Richard Napier

Hello James,
Personally I wouldn't use inclusions. I would use Decision Services. Then I can create two separate decision services, in separate Workspaces, give users permissions, use the Viewer role or the Author role to let people view or edit the Decision Services. Generally I have much more control over them.
image.pngimage.pngI would create references in the OPM project to each of the decision services
image.png
image.png
And create entities to support ABC, XYZ and then the master entity to contain both
image.png
Then I would merge the two entities into one and copy over the location to the master entity.
image.png
image.pngJust my two cents
Have a lovely day

James Woon - Monad

Ah... Decision Services! Sad to say we're on Private Cloud 20C. 
Yes, this is probably the best solution for anyone looking to solve this issue.
(I tried to mark this as answered but it seems I chose 'Discussion' instead of 'Question' for this post)
As always, appreciate your contributions to the community, Richard!

Richard Napier

Ah, I see. I was confused by you saying you had a test project in 21D. Happy to help, James. Whether it be a discussion or a question :)

1 - 5
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Oct 31 2011
Added on Nov 12 2009
3 comments
4,109 views