View Quiz | Played In | Feature / Summary / Author | Ended On  | % Correct |
 | Daily PL/SQL Quiz | Data Dictionary Views for PL/SQL Developers: ALL_ARGUMENTS
The ALL_ARGUMENTS view contains information about all the parameters of packaged subprograms and schema level program units defined in your schema. You can use it to perform quality assurance checks on those parameters, checking to see, for example, if troublesome datatypes like CHAR or LONG have been used.
Author: Steven Feuerstein [1447-448958] | 2013-05-24 Friday | - | No New Comments
Last: 2013-05-25 11:14:19 |
 | Daily PL/SQL Quiz | Handling Exceptions: Continue past exceptions
If you need to continue past errors from DML operations, you can define a nested block to narrow propagation of the exception, or SAVE EXCEPTIONS with FORALL, or LOG ERRORS (after you've created an error logging table). Each approach has different strengths and weaknesses.
Author: Steven Feuerstein [7719-448957] | 2013-05-23 Thursday | - | No New Comments
Last: 2013-05-24 08:46:12 |
 | Daily PL/SQL Quiz | Oracle PL/SQL: Dynamic SQL
Use dynamic SQL to avoid hard-coding in your application and craft more generic, reusable programs.
Author: Steven Feuerstein [7715-448956] | 2013-05-22 Wednesday | - | No New Comments Objections: SUBMITTED Last: 2013-05-24 00:17:02 |
 | Daily PL/SQL Quiz | DBMS_SCHEDULER: EVALUATE_CALENDAR_STRING
With DBMS_SCHEDULER you can use the rich calendaring syntax of the database job scheduler even if you do not create a job schedule.
Author: Kim Berg Hansen (18475) [7591-448955] | 2013-05-21 Tuesday | - | No New Comments
Last: 2013-05-22 17:13:05 |
 | Daily PL/SQL Quiz | Datetime and Interval Data Types : Datetime/Interval Arithmetic
Whenever possible, rely on straightforward date arithmetic to manipulate your dates and timestamps.
Author: Steven Feuerstein [7716-448954] | 2013-05-20 Monday | - | No New Comments Objections: REJECTED Last: 2013-05-20 18:18:27 |
 | Daily PL/SQL Quiz | Data Type Conversion: Implicit Conversion
At run time, PL/SQL converts between different data types implicitly (automatically) if necessary. For example, if you assign a PLS_INTEGER variable to a NUMBER variable, then PL/SQL converts the PLS_INTEGER value to a NUMBER value (because the internal representations of the values differ). Oracle recommends that you avoid implicit conversion and instead either ensure that you work with variables of the same datatype (avoiding the need for any kind of conversion) or you perform explicit conversions with programs like TO_CHAR or TO_DATE.
Author: Steven Feuerstein [7712-448953] | 2013-05-17 Friday | - | No Comments Last: No Comments |
 | Daily PL/SQL Quiz | AUTHID (Invoker and Definer Rights): Using Template Objects or Synonyms for IR Subprograms
When you execute an invoker rights (IR) subprogram (one defined with the AUTHID CURRENT_USER clause), Oracle will use the privileges of the invoker (both directly granted and granted through roles) to resolve references to database objects like tables and views. When a program unit is compiled, however, only directly-granted privileges can be used to resolve references. So you must either create a "template" object (same structure as the invoker's object, with or without data) or a synonym that points to an invoker's object.
Author: Steven Feuerstein [7699-448952] | 2013-05-16 Thursday | - | No New Comments
Last: 2013-05-17 15:20:54 |
 | Daily PL/SQL Quiz | Guidelines for Optimizing Performance: Avoid execution of infinite loops
Infinite loops are the bane of a programmer's existence, and an embarrassment, too. Avoid them through careful code review, proper loop construction and, just in case, inclusion of "loop killer" code to short-cut runaway execution.
Author: Steven Feuerstein [7698-448951] | 2013-05-15 Wednesday | - | No New Comments
Last: 2013-05-15 18:07:34 |
 | Daily PL/SQL Quiz | Declaring and Calling Subprograms: Recursive PL/SQL Subprograms
When you need to guarantee uniqueness of a string value, your algorithm should assume that it will take more than one attempt to get to a unique value. Recursion will often offer an elegant solution in these situations.
Author: Steven Feuerstein [7697-448950] | 2013-05-14 Tuesday | - | No New Comments
Last: 2013-05-14 20:33:27 |
 | Daily PL/SQL Quiz | Character Functions Returning Number Values: ASCII
Whenever you need to associate numeric values with letters, consider using the ASCII and/or CHR functions (if appropriate, given your character set). And, more generally, when seeking to implement subprograms for your application, avoid creating unnecessary structures and code. Utilize fully what is provided to you in the base language(s).
Author: Steven Feuerstein [7696-448949] | 2013-05-13 Monday | - | No New Comments Objections: REJECTED Last: 2013-05-15 13:41:33 |
 | Daily PL/SQL Quiz | Oracle PL/SQL: Write No Unnecessary Code
Program units that contain unnecessary code (code that can be removed without changing the behavior of that program) are units inviting maintenance problems. You should always be careful to remove any code that is not needed. Use the compile-time warning to help you identify at least some of these occurrences.
Author: Steven Feuerstein [7694-448948] | 2013-05-10 Friday | - | No New Comments Objections: REJECTED Last: 2013-05-15 12:11:05 |
 | Daily PL/SQL Quiz | Edition Based Redefinition: Instantiation of Editioned and Non-editioned Packages
The behavior of editioned and non-editioned packages differ when a session switches its current edition during its life: while a non-editioned package is instantiated once per session, as usual, an editioned package will be instantiated separately under each current edition under which it is accessed, that is, it will have a separate package state maintained for each edition.
Author: mentzel.iudith (44500) [7555-448947] | 2013-05-09 Thursday | - | No Comments Last: No Comments |
 | Daily PL/SQL Quiz | Bulk Processing with FORALL and BULK COLLECT: BULK COLLECT - Multiple Row Selects
Avoid row-by-row querying whenever possible. Cursor FOR loops are automatically optimized to retrieve up to 100 rows with each fetch, and if that is not suitable, use BULK COLLECT. Finally, remember that if you are working with nested tables or varrays, you can fetch data from them by using the TABLE operator.
Author: Steven Feuerstein [7586-448946] | 2013-05-08 Wednesday | - | No New Comments
Last: 2013-05-10 16:37:57 |
 | Daily PL/SQL Quiz | SUBSTR: Negative Start Location in SUBSTR
Whenever you need to get a sub-string from the right side of a string, use a negative starting location. That's much easier than writing your own algorithm!
Author: Steven Feuerstein [7580-448945] | 2013-05-07 Tuesday | - | No New Comments Objections: ACCEPTED Last: 2013-05-10 19:44:04 |
 | Daily PL/SQL Quiz | Numeric Data Types : NUMBER and its Subtypes
If you ever need to shift from displaying or working with integers, to working with numbers (having one or more significant digits to the right of the decimal point), make sure you find and change all elements of code that could explicitly or implicitly convert the number to an integer.
Author: Steven Feuerstein [7576-448944] | 2013-05-06 Monday | - | No Comments Last: No Comments |