This morning I went to a session of Steven Feuerstein: PL/SQl Developer, quiz thyself. A very interactive and fun presentation where the attendees had to answer questions regarding SQL and PL/SQL.
First we played a game of mastermind in which you can sharpen your deductive skills as Steven mentioned. Playing mastermind improves your skills to debug your code and eliminate factors out.
You can find all the material of his presentations and the quizes in the demo.zip file which is on his website (have a look at training, seminars).
Some items I’ve noted during the session:
How to continue past exceptions
- Use format_error_stack to display you errors instead of SQLERR using the DBMS_UTILITY package
- Use DBMS_ERRLOG.create_error_log to create an error log table based on your table on which your performing the DML on
- Surpress exceptions at row level => only possible way is when using log_errors()
- Exception raising is expensive in PL/SQL it’s better to trap exceptions
Performing bulk processing:
- Use forall to perform bulk processing instead of looping over cursors and performing DML within the loop
Ask for improvements for 12G release: Use the website ‘I love PL/SQL and …’ to add your suggestions regarding functionality to add in 12g release.
- plitblm holds all functions you can use when working with associative arrays
- format_error_backtrace gives you the possibility to get the line number where the error was raised. Have a look at Quest Error Manager to get the error-log framework
The entire session was very interesting, especially because it was a fun and practical game where you can teach thyself.